我想使用pygit2 checkout 分支名称。

例如,如果我有两个分支:masternew,而HEAD位于master,则我希望能够做到:

import pygit2
repository = pygit2.Repository('.git')
repository.checkout('new')

甚至
import pygit2
repository = pygit2.Repository('.git')
repository.lookup_branch('new').checkout()

但两者均无效,而且pygit2 docs并未提及如何 check out 分支。

最佳答案

看来您可以执行以下操作:

import pygit2
repo = pygit2.Repository('.git')
branch = repo.lookup_branch('new')
ref = repo.lookup_reference(branch.name)
repo.checkout(ref)

10-04 20:59