1.4 KiB
1.4 KiB
Diff
A diff shows the changes between trees, an index or the working dir:
>>> head = repo.revparse_single('HEAD')
# Diff two trees
>>> t0 = head.tree
>>> t1 = head.parents[0].tree
>>> diff = t1.diff(t0)
# Diff a tree with the index
>>> diff = head.tree.diff(repo.index)
# Diff a tree with the current working dir
>>> diff = head.tree.diff()
# Get all patches for a diff
>>> t0 = repo.revparse_single('HEAD^').tree
>>> t1 = repo.revparse_single('HEAD~3').tree
>>> diff = t0.diff(t1)
>>> patches = [p for p in diff]
The Diff type
pygit2.Diff.patch
pygit2.Diff.merge
pygit2.Diff.find_similar
The Patch type
pygit2.Patch.old_file_path
pygit2.Patch.new_file_path
pygit2.Patch.old_oid
pygit2.Patch.new_oid
pygit2.Patch.status
pygit2.Patch.similarity
pygit2.Patch.hunks
The Hunk type
pygit2.Hunk.old_start
pygit2.Hunk.old_lines
pygit2.Hunk.new_start
pygit2.Hunk.new_lines
pygit2.Hunk.lines