San Francisco added a run in the third. Brandon Crawford singled and so did Buster Posey on a shallow fly ball that right fielder Jamie Romak lost in the sun. McGehee, who's batting .500 (11-for-22), lined a single that delivered Crawford.
The Giants added a run in the seventh on Matt Duffy's two-out triple, which followed Adrianza's leadoff double. Mac Williamson contributed an RBI triple in the eighth and scored on Seth Simmons' wild pitch.
Bradley worked three innings, allowing two runs on six hits.
"I felt like today is a day where the numbers didn't tell how I threw," he said. "I mean, I didn't have command of the curveball until the third inning, but fastball command, the way I felt on the mound, the way I threw, I felt very good."
Giants starter Tim Hudson allowed three hits and walked two while lasting only 1 2/3 innings.
"I definitely need more mound time on the side," he said. "I'm not making really good pitches consistently."
D-backs Up Next: Yasmany Tomas is scheduled to get his first start in the outfield Monday at 1:10 p.m. MST when the D-backs take on the White Sox at Salt River Fields. Randall Delgado and Robbie Ray, both of whom are competing for spots in the rotation, are scheduled to see action.
Chris Haft is a reporter for MLB.com. Read his blog, Haft-Baked Ideas, and follow him on Twitter at @sfgiantsbeat. This story was not subject to the approval of Major League Baseball or its clubs.