Oregon took an early lead with an unearned run in the top of the third. Heineman led off the inning with a single and came around to score on a hit by Thomas thanks to a throwing error on USC shortstop Blake Lacey.
With Heineman on first, Thomas laced a single to left center. Heineman was overly aggressive coming around third, but Lacey threw wild to third trying to get the Ducks right fielder for the final out of the inning. The ball rolled into foul territory down the third base line allowing Heineman to score.
USC took the lead with two runs off Reed in the bottom of the fourth. After a leadoff walk, the Trojans put together three hits to score the two runs. Lacey drove in the first run with a RBI groundout to Altobelli and James Robert added a RBI single to right center.
The Ducks answered with two runs in the top of the sixth. Thomas and Mitchell Tolman both singled to put runners on first and second, setting up Chase who delivered a RBI single to tie the game. Altobelli added a RBI scoring Tolman to put Oregon in the lead 3-2.
The Ducks loaded the bases in the top of the seventh with one out on two hit batters and a walk by Trojan reliever Sean Adler. After a pitching change, Santos picked up his first career RBI as a Duck with a fielder's choice to the shortstop. USC got out of the inning when Thomas was caught trying to steal home.
Oregon tacked on another run in the top of the eighth to take a 5-2 lead. Heineman delivered a two-out single to right center to score Chase from third.
The Trojans threatened in the bottom of the eighth loading the bases with no outs. Junior Christian Jones came out of the bullpen and got out of the inning without allowing a run. Jones got Conner Sullivan to ground into a 1-2-3 double play and then fanned Kevin Swick to end the inning.
Oregon and USC will meet in game two of the three-game series Saturday at 2 p.m.