3.2 KiB
References
pygit2.Repository.listall_references
pygit2.Repository.lookup_reference
Example:
>>> all_refs = repo.listall_references()
>>> master_ref = repo.lookup_reference("refs/heads/master")
>>> commit = master_ref.get_object() # or repo[master_ref.target]
The Reference type
pygit2.Reference.name
pygit2.Reference.shorthand
pygit2.Reference.target
pygit2.Reference.type
pygit2.Reference.delete
pygit2.Reference.rename
pygit2.Reference.resolve
pygit2.Reference.log
pygit2.Reference.log_append
pygit2.Reference.get_object
The HEAD
Example. These two lines are equivalent:
>>> head = repo.lookup_reference('HEAD').resolve()
>>> head = repo.head
pygit2.Repository.head
pygit2.Repository.head_is_detached
pygit2.Repository.head_is_unborn
Branches
Branches inherit from References, and additionally provide spetialized accessors for some unique features.
pygit2.Repository.listall_branches
pygit2.Repository.lookup_branch
pygit2.Repository.create_branch
Example:
>>> local_branches = repo.listall_branches()
>>> # equivalent to
>>> local_branches = repo.listall_branches(pygit2.GIT_BRANCH_LOCAL)
>>> remote_branches = repo.listall_branches(pygit2.GIT_BRANCH_REMOTE)
>>> all_branches = repo.listall_branches(pygit2.GIT_BRANCH_REMOTE |
pygit2.GIT_BRANCH_LOCAL)
>>> master_branch = repo.lookup_branch('master')
>>> # equivalent to
>>> master_branch = repo.lookup_branch('master',
pygit2.GIT_BRANCH_LOCAL)
>>> remote_branch = repo.lookup_branch('upstream/feature',
pygit2.GIT_BRANCH_REMOTE)
The Branch type
pygit2.Branch.branch_name
pygit2.Branch.remote_name
pygit2.Branch.upstream
pygit2.Branch.upstream_name
pygit2.Branch.rename
pygit2.Branch.delete
pygit2.Branch.is_head
The reference log
Example:
>>> head = repo.lookup_reference('refs/heads/master')
>>> for entry in head.log():
... print(entry.message)
pygit2.RefLogEntry.oid_new
pygit2.RefLogEntry.oid_old
pygit2.RefLogEntry.message
pygit2.RefLogEntry.committer
Notes
pygit2.Repository.notes
pygit2.Repository.create_note
pygit2.Repository.lookup_note
The Note type
pygit2.Note.annotated_id
pygit2.Note.oid
pygit2.Note.message
pygit2.Note.remove