GNU bug report logs - #26345
25.1; vc-annotate in Git is unable to fully navigate the history if the file was moved

Previous Next

Package: emacs;

Reported by: Wojciech Siewierski <wojciech.siewierski <at> gmail.com>

Date: Mon, 3 Apr 2017 00:06:02 UTC

Severity: normal

Found in version 25.1

Done: Dmitry Gutov <dgutov <at> yandex.ru>

Full log


Message #54 received at 26345 <at> debbugs.gnu.org (full text, mbox):

From: Jakub Ječmínek <kuba <at> kubajecminek.cz>
To: Sean Whitton <spwhitton <at> spwhitton.name>
Cc: wojciech.siewierski <at> gmail.com, 26345 <at> debbugs.gnu.org,
 Dmitry Gutov <dgutov <at> yandex.ru>
Subject: Re: bug#26345: [PATCH] Handle renamed files when cycling through
 revisions
Date: Sat, 26 Jul 2025 22:14:37 +0200
Sean Whitton <spwhitton <at> spwhitton.name> writes:

>>> Seems like this needs to be investigated before we can proceed.
>> I've tested various scenarios and haven't encountered any issues with the
>> current implementation. It would be great if you could test the change as
>> well, in case there are edge cases I missed.
>
> I think that we need to see an argument in terms of the definition of
> the file-name-changes backend function that demonstrates that your
> approach will always work:
>
> ;;   Return the list of pairs with changes in file names in REV.  When
> ;;   a file was added, it should be a cons with nil car.  When
> ;;   deleted, a cons with nil cdr.  When copied or renamed, a cons
> ;;   with the source name as car and destination name as cdr.

My approach updates the FILE argument only if the file name has changed
in the given revision; otherwise, it keeps the name unchanged. I’m not
sure if it will **always** work, but it does fix the issue at hand. I'm
sorry, but I can't provide any further arguments in favor of this
change.




This bug report was last modified 10 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.