git diff-tree -r -C output inexact sometimes
- From
- Cristian Tibirna <tibirna@kde.org>
- Date
- Sep 21, 2012, 03:20 UTC
- Message-ID
- <2789023.yr3ihcVOhq@leto>
Hello
A colleague of mine discovered an inconsistency in the functioning of
git diff-tree -r -C
in specific conditions. As tenuous as these conditions might seem (once you run the script in attachment and analyse its output), please rest assured that it comes from a real-life case.
Running the script in attachment produces a git repository in which were operated a large number of file renames, in which many of the renamed files (in this particular case all) have the same content but different names.
The commit data from the renaming operation (last commit in the script- generated history) is inexactly rendered by the command
git diff-tree -r -C master
The logical result is correctly produced by the more restricted command
git diff-tree -r -M master
IMO for this particular last commit both the above commands should return the same result.
Note that reducing i or j in the generator script attached below makes the bug dissapear.
Thanks a lot for your attention.
-- Cristian Tibirna KDE developer .. tibirna@kde.org .. http://www.kde.org