The newcomer pitched seven solid innings to remain unbeaten, and the Padres won a home series for the first time in a month with a 7-3 victory over the New York Mets on Wednesday night.
Shields (7-0) cruised through five innings, permitting just one runner to reach second base. The right-hander allowed two runs and six hits overall. He struck out four, walked two and used three double plays to avoid major damage.
After starting the season 10-5 with a revamped lineup, including Shields as one of the key winter additions, San Diego lost 20 of its next 31 games to drop to 21-25 on May 25.
"The last couple of games we've been nice," Shields said. "But we are looking long term right now and we just got down winning a series, and that is what it is all about."
With the victory, Shields set his personal best for consecutive wins to start a season. He began 6-0 with Tampa Bay in 2006.
"Shields has been pretty steady all year, to say the least," Padres manager Bud Black said. "Shields kept them off balance."
The Mets were hurt by three errors -- two by fill-in third baseman Ruben Tejada -- that led to three unearned runs. Winless starter Dillon Gee, just off the disabled list, also hit a batter with a pitch with the bases loaded.
"We didn't make some plays behind him and get him out of trouble," manager Terry Collins said. "He's around the plate and they're going to put the ball in play. You have to catch the baseball when he pitches."
The Padres took two of three from New York to win their first home series since sweeping a three-game set against Colorado May 1-3.
"Bottom line is we should be playing better baseball." Shields said. "The only thing we can do is look at what's in the future right now."
San Diego ran its record against the Mets at Petco Park to 26-14, its best winning percentage against a National League club.
The Padres have lost only one series (9-1-2) to New York since Petco Park opened in 2004.
Will Middlebrooks drove in three runs, including a sacrifice fly in the first when the Padres used Tejada's throwing error, a walk and Yonder Alonso getting hit by a pitch with the bases loaded to go ahead 2-0.
Middlebrooks also had a two-run single in the three-run fifth that knocked Gee from the game.
Gee (0-3) allowed seven runs -- four earned -- on eight singles in four-plus innings. He couldn't overcome the Mets' miscues, including his own throwing error on a play at the plate.
Gee made his first start in a month after going on the DL with a groin strain.
Shields still has a ways to go to tie the Padres record for consecutive wins to start a season. Andy Hawkins went 11-0 to begin the 1985 season.
With Gee coming off the DL, the Mets began deploying a six-man rotation. The move is designed to limit the number of innings thrown this season by young starters Noah Syndergaard, Jacob deGrom and Matt Harvey.
Mets: LF Michael Cuddyer (sore neck) was held out of the lineup.
Padres: RHP Brandon Morrow (right shoulder inflammation) made his first rehab start Tuesday night with Double-A San Antonio. Morrow threw 54 pitches in four scoreless innings with one walk and no strikeouts.
Mets: Harvey has lost three consecutive decisions, tying his career high, heading into the opener of a four-game series at Arizona on Thursday night.