Yasmany Tomas chipped in a with a pair of solo home runs and Wellington Castillo had a three-run shot as Arizona ended a four-game losing streak and avoided a three-game sweep in Cincinnati for the first time since 2007.
Godley (3-1) became the first pitcher in franchise history to reach seven career wins as a starter in as few as 10 starts. He allowed 10 hits and five runs with two walks and three strikeouts. He also hit a batter.
Finnegan (5-8) failed for the fourth consecutive start to get past five innings. He allowed seven hits and six runs with two walk and three strikeouts.
Goldschmidt was 0-for-6 with four walks in the series before leading off the fifth with his 17th home run of the season to break a 5-all tie.
The teams combined for 13 hits and 10 runs in the first three innings, including Tomas's one-out home run in the second on the first pitch he saw from Finnegan and Castillo's opposite-field shot into the right field seats in the third.
Tomas hit Josh Smith's first pitch of the eighth for his second homer of the game.
Diamondbacks: RHP Zack Greinke, who's been on the disabled list since June 29 with a left oblique strain, threw 45 pitches during a bullpen session. His next step either will be a simulated game with the Diamondbacks or a minor league rehab game, manager Chip Hale said.
Diamondbacks: RHP Brandon Shipley, Arizona's top pick and the 15th overall choice in the 2013 draft, is scheduled to make his major league debut on Monday in the opener of a four-game series at Milwaukee.
Reds: RHP Anthony DeSclafani tries to improve to 6-0 in nine starts as the Reds on Monday open a seven-day, six-game West Coast swing with the first of three games at San Francisco.