From: David Aguilar Date: Mon, 24 Feb 2014 03:12:35 +0000 (-0800) Subject: difftool: support repositories with .git-files X-Git-Tag: v1.9.1~2^2~1 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/94eaa806519498de2ca59a424b013812d72d21c5?hp=94eaa806519498de2ca59a424b013812d72d21c5 difftool: support repositories with .git-files Modern versions of "git submodule" use .git-files to setup the submodule directory. When run in a "git submodule"-created repository "git difftool --dir-diff" dies with the following error: $ git difftool -d HEAD~ fatal: This operation must be run in a work tree diff --raw --no-abbrev -z HEAD~: command returned error: 128 core.worktree is relative to the .git directory but the logic in find_worktree() does not account for it. Use `git rev-parse --show-toplevel` to find the worktree so that the dir-diff feature works inside a submodule. Reported-by: Gábor Lipták Helped-by: Jens Lehmann Helped-by: John Keeping Signed-off-by: David Aguilar Signed-off-by: Junio C Hamano ---