SAN FRANCISCO (AP) -- Tim Lincecum pitched his second no-hitter against the San Diego Padres in less than a year, allowing only one runner Wednesday and leading the San Francisco Giants to a 4-0 win.
Lincecum totally shut down the weakest-hitting team in the majors, striking out six and walking one.
"I didn't feel like my stuff was great," he said.
No matter, Lincecum retired the final 23 batters after walking Chase Headley in the second inning. Though the Padres hit a few balls hard, San Francisco fielders didn't need to make any exceptional plays to preserve Lincecum's gem
The 30-year-old Lincecum (6-5) threw 113 pitches for this win, using a big-breaking curve to set up his fastball. Last July 13 at San Diego, he threw 148 pitches while holding the Padres hitless.
"It was not a stuff day. It was more of a location day," he said.
The right-hander with two NL Cy Young Awards became just the second pitcher in major league history to twice no-hit the same team. Hall of Famer Addie Joss did it for Cleveland against the Chicago White Sox with a perfect game in 1908 and a no-hitter in 1910.
This was the third no-hitter in the majors this year. Clayton Kershaw did it exactly a week ago and his Los Angeles Dodgers teammate Josh Beckett did it earlier in the season.
Headley walked with one out in the second after falling behind 1-2 in the count. The Padres began the day worst in the majors in batting average, runs and hits.
The Padres, incidentally, are the only franchise in the big leagues that has never pitched a no-hitter.
Lincecum made quick work of the San Diego hitters in the late innings.
He drew a standing ovation when he batted in the eighth, then got another ovation when he took the mound to begin the ninth.
Lincecum struck out pinch-hitter Chris Denorfia to open the ninth. Pinch-hitter Yasmani Grandal followed with a tapper back to Lincecum, who tossed to first for the out.
Will Venable was up next, and Lincecum retired him on an easy grounder to second base. Lincecum took a few steps toward first when the ball was hit, stopped to watch the play and clapped his hand into his glove when it was over.
Catcher Hector Sanchez soon met Lincecum for an embrace, and the rest of the Giants joined in the celebration.
Lincecum threw the 16th no-hitter in Giants' team history. Just one other pitcher has thrown two -- Christy Mathewson for the New York Giants more than 100 years ago.
Lincecum joined Justin Verlander, Mark Buehrle and Homer Bailey as active pitchers with two no-hitters. Nolan Ryan holds the all-time record with seven.
"Right now, I guess I'm just saying it's really cool," Lincecum said.
No longer the shaggy-haired ace of the Giants, Lincecum sported a mustache while thrilling 41,500 fans at AT&T Park. He lowered his ERA to 4.42 and put together quite a complete game -- he went 2 for 3 with a walk and scored twice.
Lincecum starred for the Giants in 2010, going 16-10 as they won their first World Series crown since moving to San Francisco in 1958. He hasn't finished with a winning record since then, and was relegated to the bullpen when the Giants won another championship in 2012.
Buster Posey got four hits, including a double, and drove in two runs.
Ian Kennedy (5-9) allowed four runs on nine hits over 6 1/3 innings. He walked one and struck out eight.
The Giants took a 1-0 lead in the second when Brandon Crawford tripled and Sanchez hit a sacrifice fly.
Sandoval doubled home a run in the third and Posey hit a two-run double in the seventh.
NOTES: The Giants put OF Angel Pagan on the disabled list with a lower back strain retroactive to June 15. OF Adam Duvall was recalled from Triple-A Fresno to replace Pagan. ... Giants RHP Ryan Vogelsong (5-3, 4.13) is scheduled to start Thursday's game against the Cincinnati Reds. He beat the Reds in Cincinnati on June 4, striking out a career-high nine. ... RHP Tyson Ross (6-7, 3.22) starts for the Padres against the Arizona Diamondbacks on Friday. Ross is 3-6 in San Diego despite a 2.19 ERA. ... The Padres are hosting a public memorial for Tony Gwynn on Thursday at 7:19 p.m. at Petco Park. Gwynn wore No. 19.