Brandon Barnes hit a two-run, inside-the-park home run in the ninth inning and the Colorado Rockies rallied for the second straight day to stun the San Francisco Giants 5-4 on Saturday.