Sometimes the Twins don't even need a hit to score a run, though that might only work when Byron Buxton is on the field.

Buxton engineered the Twins' first run after his leadoff walk in the third inning. He stole second base during Jorge Polanco's at-bat, then scampered to third on the throw from Polanco's fly out.

All it took was a sacrifice fly from Mitch Garver for Buxton's outstanding speed to start the Twins off to their eventual 3-2 victory Tuesday night against the Detroit Tigers in front of an announced Target Field crowd of 16,329.

"He looks like he's moving faster than everything else," Twins manager Rocco Baldelli said of Buxton. "It's a fast-forward kind of thing, but we're used to that. He picks his spots. He's a smart player. He knows how to take advantage of things when the opportunities are out there."

The Twins added some padding to that lead in the seventh inning with Miguel Sano's 30th home run of the season, the second time he's accomplished that mark in his career (he hit a career-high 34 in 2019). Pinch hitter Nick Gordon then walked, eventually coming around on Max Kepler's sacrifice fly.

Twins starter Charlie Barnes learned of his start Sunday and was on a 65-pitch count that saw him through four innings, allowing only three hits and three walks. The bullpen continued a strong recent run with Jorge Alcala, Tyler Duffey, Caleb Thielbar and Ralph Garza Jr. producing shutout single innings.

BOXSCORE: Twins 3, Detroit 2

"It's always impressive to watch them," Barnes said of the relievers. "Really since I've gotten up here in the back half of the year, the way they've thrown the ball has just been really impressive. I kind of expect them to do that when I come in."

Alexander Colome came on in the ninth and gave up a leadoff single to Eric Haase before Akil Baddoo's two-out hit drove him in. Jonathan Schoop's line-drive RBI single to center brought Detroit within a run, but Colome struck out former Twins outfielder Robbie Grossman to preserve the victory with his 17th save.

Ober and out

The Twins placed rookie pitcher Bailey Ober on the injured list, ending his season about one start shy. Ober was put on the IL because of a right hip strain, clearing the way for Barnes to come up and start Tuesday night's game.

Ober started 20 games this year, establishing a 3-3 record and 4.19 ERA all while being on about an 80-pitch count per outing. He has struggled with injuries his whole career, including having Tommy John elbow surgery in 2015 as a college player, and didn't play at all during the 2020 pandemic season. But he said his body felt the best it had in years after throwing 92â…“ innings between the majors and minors this season.

Maintaining his health and preparing for what he hopes is a spot in the rotation next season is Ober's No. 1 goal heading into this offseason. He trains in Denver with Twins teammates Taylor Rogers and Garver.

Baldelli said Ober, 26, exceeded all his expectations this season. Despite the overall year being a disappointment for the Twins, Ober as an up-and-coming starter has given the organization excitement for the future.

"I try not to take anything for granted, and it's very humbling to be here just to kind of see what I've had to go through and all the work that I've had to put in," Ober said. "I can definitely sit back and say, so far to this point, I've done what I needed to do to get here. … And hopefully I continue to do what's needed to be done to stay up here as long as I can."

Ryan to go Thursday

Rookie Joe Ryan, initially slated to start Sunday, was en route back to Minnesota from his native San Francisco on Tuesday, said Baldelli. Ryan has been absent since Friday when he went on the family medical/bereavement list.

"He will be back, I believe, [Wednesday] at the ballpark here and ready to go," Baldelli said. "… We're still planning on pitching him Thursday. I think he's going to be able to take care of that."

Baldelli added after the game the Twins will reinstate Ryan on Wednesday and send Barnes back to Class AAA St. Paul.

Ryan is 2-1 this season with a 2.45 ERA. He joined the Twins after pitching in this past summer's Olympic Games, traded while in Tokyo from the Tampa Bay Rays. His strong starts have been an exciting development late in this postseason-less year.