[PATCH 0/3 v4] Make git log --follow find copies among unmodified files.
- From
Bo Yang <struggleyb.nku@gmail.com>
- Date
- May 7, 2010, 04:52 UTC
- Message-ID
- <1273207949-18500-1-git-send-email-struggleyb.nku@gmail.com>
I have tried to make --follow to support finding copies among unmodified files. And the first patch is to fix a bug introduced by '--follow' and 'git log' combination. We use the code:
else if (--p->one->rename_used > 0)
p->status = DIFF_STATUS_COPIED;to detect copies and renames. So, if diffcore_std run more than one time, p->one->rename_used will be reduced to a 'R' from 'C'. And this patch will fix this by allowing diffcore_std can only run once before a diff_flush, which seems rationale for our code.
Bo Yang (3): Add a macro DIFF_QUEUE_CLEAR. Make diffcore_std only can run once before a diff_flush Make git log --follow find copies among unmodified files.
Documentation/git-log.txt | 2 +- diff.c | 21 ++++++++----- diffcore-break.c | 6 +-- diffcore-pickaxe.c | 3 +- diffcore-rename.c | 3 +- diffcore.h | 7 ++++ t/t4205-log-follow-harder-copies.sh | 56 +++++++++++++++++++++++++++++++++++ tree-diff.c | 2 +- 8 files changed, 82 insertions(+), 18 deletions(-) create mode 100755 t/t4205-log-follow-harder-copies.sh