在 python 脚本中,我尝试在克隆 git 存储库后签出标签。我使用 GitPython 0.3.2。
#!/usr/bin/env python
import git
g = git.Git()
g.clone("user@host:repos")
g = git.Git(repos)
g.execute(["git", "checkout", "tag_name"])
使用此代码,我有一个错误:
g.execute(["git", "checkout", "tag_name"])
File "/usr/lib/python2.6/site-packages/git/cmd.py", line 377, in execute
raise GitCommandError(command, status, stderr_value)
GitCommandError: 'git checkout tag_name' returned exit status 1: error: pathspec 'tag_name' did not match any file(s) known to git.
如果我用分支名称替换标签名称,我没有问题。我没有在 GitPython 文档中找到信息。如果我尝试在 shell 中签出相同的标签,我没有问题。
你知道如何在 python 中签出 git 标签吗?