To list branches you can use:
from git import Repo
r = Repo(your_repo_path)
repo_heads = r.heads # or it's alias: r.branches
r.heads
returns git.util.IterableList
(inherits after list
) of git.Head
objects, so you can:
repo_heads_names = [h.name for h in repo_heads]
And to checkout eg. master
:
repo_heads['master'].checkout()
# you can get elements of IterableList through it_list['branch_name']
# or it_list.branch_name
Module mentioned in the question is GitPython
which moved from gitorious
to Github.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…