Closed
Description
GitPython version: 3.1.42.
from git import Repo
repo = Repo(".")
print(repo.index.diff("HEAD"))
print(repo.index.diff("HEAD", create_patch=True))
print(repo.index.diff(None))
print(repo.index.diff(None, create_patch=True))
prints
[<git.diff.Diff object at 0x10cbb08b0>]
[]
[<git.diff.Diff object at 0x103d49d30>]
[]
R=True
workaround mentioned in #852 does not help either:
print(repo.index.diff("HEAD", create_patch=True, R=True))
# []
This also happens when I try to diff tree against index or working tree
print(repo.head.commit.diff(None, create_patch=True))
print(repo.head.commit.diff(None))
print(repo.head.commit.diff())
print(repo.head.commit.diff(create_patch=True))
returns
[]
[<git.diff.Diff object at 0x103d69670>, <git.diff.Diff object at 0x103d699d0>]
[]
[<git.diff.Diff object at 0x103d69700>]
It looks like using create_patch=True
when comparison includes index or working tree always returns empty list. So right now only way to reliably use create_patch=True
is to diff tree against tree.
Originally posted by @can-taslicukur in #852 (comment)