reassign 542709 git git/1:1.6.3.3-2 quit Hi,
On 18 November 2009, Uli Schlachter wrote: > I just saw something like this, too. > > After git rebase I got tons of conflicts, I fixed them up and "git add"'ed > each > file, but git rebase --continue just showed me the message the message above. > (git status didn't report any unmerged files) > > With some googling I found git diff-files which gave me a file name. In other words, the index’s cached lstat() information was getting out of date for some reason. The details of why are still a mystery to me. But I have learned a little. To recap, most "high level" commands refresh the index before they start work. Low-level commands do not, since the caller can take care of it and this makes calling them in a loop a little faster[1]. That is far from explaining your symptoms, since as a high-level command, ‘git rebase’ should refresh the index itself when appropriate. Uli, do you know whether you were using a release candidate when you experienced this problem? If you remember when that was, /var/log/dpkg.log would tell. I am asking because this would confirm whether the explanation is sane, since in any release before 1.7.0, ‘git status’ would have refreshed the index[2]. Thanks, Jonathan [1] Once exception: although it is a high-level command, gitk does not refresh the index. I think this is a good thing, since it makes it easier to investigate problems. There is already a patch written to change this behavior, so it should be easy to change my mind. http://thread.gmane.org/gmane.comp.version-control.git/144176/focus=144182 See also http://bugs.debian.org/522349 [2] ‘git status’ does not have much need to refresh the index, but it was once advertised to. It does not currently refresh the index, but this a bug and will be fixed soon: . v1.5.4-rc0~78^2~30 (Port git commit to C, 2007-11-08) left out this feature. . v1.5.4-rc0~78^2~27 (builtin-commit: Refresh cache after adding files, 2007-11-09) brought it back again. . v1.5.4-rc0~33 (don't mention index refreshing side effect in git-status docs, 2007-12-09) removed the advertisement. . v1.6.6.2~24^2 (status: don't require the repository to be writable, 2010-01-19) moved to the present behavior: ‘git status’ tries to refresh the index if and only if it has permission to. This way, ‘git status’ can still be used in a read-only repository. . v1.7.0-rc0~137^2~17 (git status: not "commit --dry-run" anymore, 2009-08-15) broke it again. . commit 4bb6644 (git status: refresh the index if possible, 2010-04-02) from master fixes it again and should be part of the next upstream release. -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org