The left-hander just feels good from the first pitch to the on-field high-fives at the end.
Hamels pitched into the eighth inning as he stayed unbeaten in his career against Cincinnati, and Jimmy Rollins moved closer to the Phillies' hit record with a solo homer, leading Philadelphia to an 8-0 victory Friday night.
The Phillies ended their longest losing streak of the season at six games. Cincinnati dropped its third straight.
Hamels (2-3) improved to 10-0 in 13 career appearances against the Reds, holding them to three runs or less each time. The Phillies have won all of his 13 starts against Cincinnati, including his five-hit shutout during the 2010 playoffs.
Hamels made his big league debut at Great American Ball Park in 2006 with five shutout innings, and he remembers that feeling every time he returns.
"It's a great memory and it's everlasting," said Hamels, who allowed five hits and struck out seven in 7 2-3 innings, throwing 125 pitches. "That's what I take from it: `This is it, this is what I worked for since I was a little kid.' I take it out there year after year."
The Phillies piled up 11 hits with eight players getting at least one.
"A lot of guys contributed," manager Ryne Sandberg said. "That will go a long way going into tomorrow with momentum with a lot of guys."
Rollins hit his seventh homer off Johnny Cueto (5-5), who lasted only five innings for his shortest start of the season. The solo homer left Rollins six hits shy of the club record. Rollins has 2,228 hits with the Phillies, trailing only Hall of Famer Mike Schmidt's mark of 2,234.
Domonic Brown had a two-run double and a sacrifice fly, and John Mayberry Jr. singled home a run off Cueto, who matched his season high by giving up six hits. Cueto's ERA jumped from a league-leading 1.68 to 1.97.
"That's what good ballclubs do," Brown said. "They do things like that. They pick each other up. I think we're growing every day."
Cincinnati's offense remained in a deep slump.
The Reds lost to the Giants 6-1 on Thursday, with the last 19 batters going down in order. The streak reached 25 in a row before Zack Cozart singled in the third inning.
Their scoreless streak is at 17 innings and counting.
Ryan Ludwick had a chance to break the streak, but was thrown out at home in the seventh inning as he tried to score from third base on a ball that bounced away from Carlos Ruiz. The catcher recovered quickly and threw to Hamels, who tagged the sliding Ludwick.
"An unbelievable play," Sandberg said. "Textbook. It's a fundamental play, but you don't practice it every day."
The closer for the Red Sox and Phillies was the fastest to his 200th save, getting it in his 359th game. If he gets No. 300 in his next appearance, he will tie Trevor Hoffman (552 games) for second-fastest. Mariano Rivera got No. 300 in his 537th game.
Chase Utley had three hits and a sacrifice fly for the Phillies. He was hit by a pitch and was picked off first base by Cueto, who needed 92 pitches to make it through five innings. Cueto uncharacteristically hit two batters in the same inning and gave up his first homer in five starts.
Roberto Hernandez (2-3) starts for the Phillies on Saturday against Alfredo Simon (7-3). Hernandez is trying for his first win since May 4. ... The Phillies promoted INF Ronny Cedeno, who batted .286 with a homer and 20 RBIs for Triple-A Lehigh Valley. LHP Cesar Jimenez was designated for assignment to the minors. ... Cincinnati's Brayan Pena was hitless in four at-bats, extending his slump to a career-worst 0 for 17. ... RHP Mat Latos will make one more rehab start before the Reds consider activating him. His last start for Triple-A Louisville was stopped after 67 pitches because he had a calf cramp. Latos wanted to be activated rather than make one more appearance in the minors, but the Reds want him to get to 100 pitches before he goes back into the rotation.