Code

[PATCH] Diff updates to express type changes
authorJunio C Hamano <junkio@cox.net>
Thu, 26 May 2005 09:24:30 +0000 (02:24 -0700)
committerLinus Torvalds <torvalds@ppc970.osdl.org>
Thu, 26 May 2005 22:18:55 +0000 (15:18 -0700)
commit4130b99571903fb93e4c6e0d6677be7b6b986426
tree4f330570b0cbf3edceaef05ca97e4d255afd48e4
parenta577284aee793d71982e896b711c7b3d57e6bcf2
[PATCH] Diff updates to express type changes

With the introduction of type 'T' in the diff-raw output, and
the "apply-patch" program Linus has been quietly working on
without much advertisement, it started to make sense to emit
usable information in the "diff --git" patch output format as
well.  Earlier built-in diff driver punted and did not say
anything about a symbolic link changing into a file or vice
versa, but this version represents it as a pair of deletion
and creation.

It also fixes a minor problem dealing with old archive created
with ancient git.  The earlier code was reporting file mode
change between 100664 and 100644 (we shouldn't).  The linux-2.6
git tree has a good example that exposes this problem.  A good
test case is commit ce1dc02f76432a46db149241e015a4f782974623.

Signed-off-by: Junio C Hamano <junkio@cox.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
diff.c
diffcore.h