Lance McCullers carried a no-hit bid into the seventh inning, and the host Houston Astros parlayed a four-run third inning into a 6-4 win over the San Francisco Giants on Monday night. McCullers (2-1), roughed up for a career-high-tying eight runs in his previous start, pitched effectively and efficiently. The utilization of his repertoire -- sinkers, knuckle curveballs and changeups -- flummoxed the Giants, despite McCullers recording just 10 swinging strikes on the night.