我是gitpython的新手,并且无法在任何地方找到对此的参考。我希望做的是:
If remote branch name exists:
do something
else:
do something else
有什么建议吗?
答案 0 :(得分:1)
这可能不起作用,但请试一试让我知道它是怎么回事:
does_exist = True
try:
repo.git.checkout('branch_name')
except repo.exc.GitCommandError:
does_exist = False
print(does_exist)
这可能也有用,但试一试:
repo.git.rev_parse('--verify', 'branch_name')
答案 1 :(得分:0)
谢谢Muadh!我能够让这个工作:
try:
repo.git.checkout( 'origin/' + branch_name, b=branch_name )
except:
repo.git.checkout( 'origin/master', b=branch_name )
答案 2 :(得分:0)
GitPython引用了所有分支。用户可以重复检查分支是否属于该引用的一部分。
要打印所有分支,请以此作为参考:
for ref in repo.references:
print("Branch Name is: ", ref.name)
类似地,如果您可以做类似的事情
for ref in repo.references:
if branchName == ref.name:
Do likely something
else:
Do unlikely something
答案 3 :(得分:0)
最简单的似乎是:
allBranches = git.Git().branch("-all").split()
"<testedBranch>" in allBranches
>>> true/false