我试图使用GitPython编写一些Python脚本,我可以用它来简化我的日常任务,因为我管理了许多分支。
在编写复杂的脚本时,我对Python也很陌生。
这是我使用的API:GitPython API doc
我想在GitPython中编写它,它只是执行以下操作并解析显示HEAD远程分支指向的部分。换句话说,我想基本上得到remotes/origin/HEAD
$ git branch -a
master
* branch_to_remove
remotes/origin/HEAD -> origin/master
remotes/origin/master
remotes/origin/testing
我多次浏览API文档,起初我很难理解这些API文档的Python格式,除了{{{I}之外我找不到任何有用的东西。 1}}在remote_head
但我甚至不知道如何打电话/初始化它。
这是我到目前为止所做的,你可以告诉我我想要做什么,只需重置为“没有分支”'陈述并删除我当前的分支:
class git.refs.reference.Reference(repo, path, check_path=True)
非常感谢任何帮助!
感谢。
答案 0 :(得分:4)
我刚看到你的问题我想知道这个gitPython,看起来真的很好的工具,我在GitPython文档中寻找这个特定的问题没有幸运,但如果你在github上搜索你会看到很多测试并且有一个测试。
当您搜索“删除新分支”时,您会看到类似的内容:
# remove new branch
Head.delete(new_remote_branch.repo, new_remote_branch)
答案 1 :(得分:4)
打印当前分支:
print(repo.head.ref)
列出分支
print [str(b) for b in repo.heads]
结帐分行
repo.heads[branch].checkout()
或repo.git.checkout(branch)
如果您要删除分支,则需要使用不同的LOCAL分支,您可以通过多种方式进行分支
repo.heads['master'].checkout()
或repo.git.checkout('master')
或repo.git.checkout('remotes/origin/master')
希望这有帮助