From: Jakub Narebski <jnareb@gmail.com>
To: git@vger.kernel.org
Subject: git diff -B: splitting up complete renames
Date: Sat, 5 Jan 2008 18:18:38 +0100 [thread overview]
Message-ID: <200801051818.40009.jnareb@gmail.com> (raw)
First: in Documentation/diffcore.txt there is an example of broken pair
diffcore-break: For Splitting Up "Complete Rewrites"
----------------------------------------------------
The second transformation in the chain is diffcore-break, and is
controlled by the -B option to the git-diff-* commands. This is
used to detect a filepair that represents "complete rewrite" and
break such filepair into two filepairs that represent delete and
create. E.g. If the input contained this filepair:
------------------------------------------------
:100644 100644 bcd1234... 0123456... M file0
------------------------------------------------
and if it detects that the file "file0" is completely rewritten,
it changes it to:
------------------------------------------------
:100644 000000 bcd1234... 0000000... D file0
:000000 100644 0000000... 0123456... A file0
------------------------------------------------
Shouldn't the last block read for the modern git read:
------------------------------------------------
:100644 000000 bcd1234... 0123456... M99 file0
------------------------------------------------
or is it only for '-B' togehter with '-M' or '-C'?
Second: do you have per chance good examples of broken (and perhaps
merged together) pair, such that it is affected by --diff-filter=B;
with -B<num> or -B<num1>/<num2> parameters needed, if required. COPYING
and Makefile are one good example, but do you have literal files with
similar behavior?
Third: Do "git diff --no-index" (filesystem diff) can show breaking /
use dissimilarity? I couldn't make it work...
--
Jakub Narebski
Poland
next reply other threads:[~2008-01-05 17:19 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-01-05 17:18 Jakub Narebski [this message]
2008-01-05 17:37 ` git diff -B: splitting up complete renames Linus Torvalds
2008-01-05 19:18 ` Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200801051818.40009.jnareb@gmail.com \
--to=jnareb@gmail.com \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.