SAN FRANCISCO -- Mac Williamson had to dust himself off after crashing into a low padded wall near the stands in left field while chasing a foul ball.
More frustrated than hurt, Williamson took it out on Nationals pitcher Tanner Roark a few moments later after undergoing a series of concussion tests in the dugout.
Williamson homered for the second straight night and third in five games, hitting a tiebreaking shot in the sixth inning to lead San Francisco to a 4-3 victory over Washington on Tuesday night.
"I got pretty lucky," Williamson said. "I felt fine then and I feel fine now. I'm sure once the adrenalin wears off later tonight, tomorrow we'll see how the body feels. I'm sure I'll be a little sore."
Brandon Belt hit his fifth home run in six games, Joe Panik added three hits and scored twice, and the Giants won their third straight and fourth in the last five.
One night after hitting a 464-foot homer in the series opener, Williamson hit a first-pitch solo shot to center off Roark with two outs in the sixth inning that bounced off the top of the wall and broke a 3-all tie. It wasn't as far as Monday's clout -- this one went 423 feet -- but was just as pivotal for the Giants.
"We've talked about what a shot in the arm he's been and he's more than that," Giants manager Bruce Bochy said. "He came through again tonight. Good for him because he's worked hard at it."
Williamson's deciding home run came one inning after he stumbled over the bullpen mound in foul territory and crashed into a low wall near the stands while trying to chase down Bryce Harper's foul ball. Williamson stayed down briefly as team trainers rushed out before getting to his feet.
"I tried to roll my neck a little bit and my head down a little bit when I started going down," Williamson said. "I think that helped break my fall. I was just a little frustrated I didn't come up with the play. I had it in my glove and it came out."
Belt hit a two-run shot off Roark (1-2) in the third.
Michael Taylor had a three-run homer for Washington, which has lost four straight and 14 of 20 since opening the season 4-0.
"It seems like that sixth inning's been biting us in the rear as of late," Nationals manager Dave Martinez said. "We're swinging the bats. We just can't get the big hit with people on base."
Reyes Moronta (1-0) retired six batters for his first career win. Sam Dyson pitched one inning and Hunter Strickland worked the ninth for his fifth save.
The Giants got a run off Roark in the first but left the bases loaded when Evan Longoria struck out looking to end the inning. Belt homered on a 3-2 pitch from Roark in the second to make it 3-0.
Washington tied it on Taylor's three-run homer off starter Ty Blach in the third. Ryan Zimmerman walked and Moises Sierra singled before Taylor's deep drive into the right-field stands.
Roark went into the game 6-0 in seven career games against San Francisco but couldn't find a rhythm this time. He allowed four runs on six hits, walked two and hit a batter and threw a pair of wild pitches.
WHERE DID IT GO?
Panik hit a soft comebacker to Roark in the fifth that glanced off the pitcher's glove then bounced up on the top of his cap before falling to the turf. Roark initially couldn't locate the ball but found it in time to throw to first for the out.
Blach allowed three runs and four hits in five innings. After the game, Bochy said the left-hander suffered from food poisoning last week and was given an IV on Monday. "That was a really gutty effort that he gave us," Bochy said.
Nationals: Placed RHP Shawn Kelley on the 10-disabled list with ulnar nerve irritation in his right elbow. Infielder/outfielder Matt Reynolds was optioned to Triple-A Syracuse and outfielder Rafael Bautista and infielder Adrian Sanchez were called up.
Nationals RHP Max Scherzer (4-1, 1.36 ERA) and Giants RHP Jeff Samardzija (1-0, 0.00) take to the mound for the series finale at AT&T Park on Wednesday. Samardzija is making his second start after beginning the season on the disabled list.