GNU bug report logs -
#26066
vc-git-status gives wrong result when called from outside repository
Previous Next
Reported by: Jonathan Ganc <jonganc <at> gmail.com>
Date: Sun, 12 Mar 2017 02:45:02 UTC
Severity: minor
Tags: patch
Found in versions 25.2, 26.0.50, 24.5
Done: Lars Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
Full log
Message #79 received at 26066 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
I've incorporated Thien-Thi's suggestion, as well as an if to check
status for nil (which indicates unregistered).
On 04/10/2017 08:07 PM, Dmitry Gutov wrote:
> You are right. But we could set it in vc-state-refresh.
>
On 04/10/2017 07:46 PM, Dmitry Gutov wrote:
>
> Thanks. I guess the main thing left is to decide whether vc-git-state
> should bind default-directory. For example, vc-bzr-state doesn't,
> while vc-hg-state does.
>
> Does this binding affect the command output, in this particular case?
The binding affects the output if default-directory is not set inside
the file's repository.
Since, in principle, the vc functions should be agnostic to the choice
of vcs, either a) vc-state documentation should state that
default-directory should be set to get generally correct responses or b)
it should be set in some function (and I agree that vc-state-refresh
makes sense).
I think the overhead of setting the directory is rather low. In some
admittedly rudimentary benchmarks, there is almost no difference in
performance setting default-directory.
There's also the question of how to handle default-directory. You cannot
simply do (file-name-directory file), because that fails if FILE is
given without a directory. I think the correct one is
(file-name-directory (expand-file-name file)) (which, surprisingly, is
slighly faster than (file-name-directory (concat default-directory file)) ).
[0001-update-vc-git.patch (text/x-patch, attachment)]
This bug report was last modified 4 years and 345 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.