Angel Pagan broke a tie with a two-run single in the sixth, Matt Cain settled down after a shaky start and the San Francisco Giants won their 10th straight over Colorado, rallying from a six-run deficit to beat the Rockies 8-6 on Thursday night.