GNU bug report logs - #19386
24.4.51; vc-git-dir-status shows edited files as up-to-date when FILES is non-nil

Previous Next

Package: emacs;

Reported by: Dmitry Gutov <dgutov <at> yandex.ru>

Date: Mon, 15 Dec 2014 14:14:01 UTC

Severity: normal

Found in version 24.4.51

Fixed in version 24.5

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

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 19386 in the body.
You can then email your comments to 19386 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#19386; Package emacs. (Mon, 15 Dec 2014 14:14:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Dmitry Gutov <dgutov <at> yandex.ru>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Mon, 15 Dec 2014 14:14:02 GMT) Full text and rfc822 format available.

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

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: bug-gnu-emacs <at> gnu.org
Subject: 24.4.51;
 vc-git-dir-status shows edited files as up-to-date when FILES is
 non-nil
Date: Mon, 15 Dec 2014 16:12:45 +0200
Because the `up-to-date' stage in `vc-git-after-dir-status-stage' calls
'git ls-files -z -c -s -- file1 file2 file3', and that output includes
modified files (but not unregistered or ignored).

To reproduce:

~/vc$ git init test
Initialized empty Git repository in /home/gutov/vc/test/.git/
~/vc$ cd test
~/vc/test$ echo foo > foo
~/vc/test$ touch .gitignore
~/vc/test$ git add .gitignore
~/vc/test$ git commit -m "Add .gitignore"
[master (root-commit) e416e1c] Add .gitignore
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 .gitignore
~/vc/test$ echo bar > .gitignore
~/vc/test$ echo bar > bar
~/vc/test$ git add foo
~/vc/test$ git commit -m "Add foo"
[master 3a47057] Add foo
 1 file changed, 1 insertion(+)
 create mode 100644 foo
gutov <at> axl:~/vc/test$ touch tee
gutov <at> axl:~/vc/test$ PATH=~/vc/emacs-24/src:$PATH emacs --batch --eval "(let (done) (vc-call-backend 'Git 'dir-status-files \".\" '(\"foo\" \"bar\" \"tee\" \".gitignore\") nil (lambda (entries &optional mtc) (message \"%s\" entries) (setq done (not mtc)))) (while (not done) (sleep-for 0.1)))"
((.gitignore up-to-date [cl-struct-vc-git-extra-fileinfo 33188 33188 nil nil]) (foo up-to-date [cl-struct-vc-git-extra-fileinfo 33188 33188 nil nil]))
((tee unregistered [cl-struct-vc-git-extra-fileinfo 0 0 nil nil]))
((bar ignored [cl-struct-vc-git-extra-fileinfo 0 0 nil nil]))

The .gitignore entry above should be `edited'.

The easiest solution seems to be to move the `up-to-date' stage to after
`diff-index'. Fix forthcoming.

In GNU Emacs 24.4.51.5 (x86_64-unknown-linux-gnu, GTK+ Version 3.10.8)
 of 2014-12-11 on axl
Repository revision: 0c2f254bc3d69ba08a59037e8e192d5d7fb7d816
Windowing system distributor `The X.Org Foundation', version 11.0.11501000
System Description:	Ubuntu 14.04.1 LTS




Reply sent to Dmitry Gutov <dgutov <at> yandex.ru>:
You have taken responsibility. (Mon, 15 Dec 2014 14:57:02 GMT) Full text and rfc822 format available.

Notification sent to Dmitry Gutov <dgutov <at> yandex.ru>:
bug acknowledged by developer. (Mon, 15 Dec 2014 14:57:03 GMT) Full text and rfc822 format available.

Message #10 received at 19386-done <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: 19386-done <at> debbugs.gnu.org
Subject: Re: bug#19386: Acknowledgement (24.4.51; vc-git-dir-status shows
 edited files as up-to-date when FILES is non-nil)
Date: Mon, 15 Dec 2014 16:56:25 +0200
Version: 24.5

Fixed on emacs-24.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Tue, 13 Jan 2015 12:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 9 years and 99 days ago.

Previous Next


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