aboutsummaryrefslogtreecommitdiff
path: root/builtin-diff.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2008-08-18 20:08:09 -0700
committerJunio C Hamano <gitster@pobox.com>2008-08-30 20:53:24 -0700
commita5a818ee4877e4458e8e6741a03ac3b19941d58a (patch)
tree5aaac05e0e8951fbafef1cef8eb4230a9bfe563c /builtin-diff.c
parent53d1589ff6bd336e3ece39e0a963a3d2a537cf96 (diff)
downloadgit-a5a818ee4877e4458e8e6741a03ac3b19941d58a.tar.gz
git-a5a818ee4877e4458e8e6741a03ac3b19941d58a.tar.xz
diff: vary default prefix depending on what are compared
With a new configuration "diff.mnemonicprefix", "git diff" shows the differences between various combinations of preimage and postimage trees with prefixes different from the standard "a/" and "b/". Hopefully this will make the distinction stand out for some people. "git diff" compares the (i)ndex and the (w)ork tree; "git diff HEAD" compares a (c)ommit and the (w)ork tree; "git diff --cached" compares a (c)ommit and the (i)ndex; "git-diff HEAD:file1 file2" compares an (o)bject and a (w)ork tree entity; "git diff --no-index a b" compares two non-git things (1) and (2). Because these mnemonics now have meanings, they are swapped when reverse diff is in effect and this feature is enabled. Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin-diff.c')
-rw-r--r--builtin-diff.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/builtin-diff.c b/builtin-diff.c
index 7ffea9750..266337b83 100644
--- a/builtin-diff.c
+++ b/builtin-diff.c
@@ -74,6 +74,8 @@ static int builtin_diff_b_f(struct rev_info *revs,
if (!(S_ISREG(st.st_mode) || S_ISLNK(st.st_mode)))
die("'%s': not a regular file or symlink", path);
+ diff_set_mnemonic_prefix(&revs->diffopt, "o/", "w/");
+
if (blob[0].mode == S_IFINVALID)
blob[0].mode = canon_mode(st.st_mode);