Nope, it was a bug in my pre-commit hook. See the other response to this message. Robert Irelan | Server Systems | Epic | (608) 271-9000 -----Original Message----- From: Torsten Bögershausen [mailto:tboegi@xxxxxx] Sent: Tuesday, March 05, 2013 4:41 AM To: Robert Irelan Cc: git@xxxxxxxxxxxxxxx Subject: Re: "git commit" fails due to spurious file in index On 04.03.13 19:15, Robert Irelan wrote: > Hello all: > > This is my first time posting to this mailing list, but it appears to > me, through a Google search, that this is where you go to report what > might be bugs. I'm not sure if this is a bug or not, but it is > mysterious to me. > > My git repository has this directory structure (I don't know if the > file names are necessary or not; only the leaf directories contain files): > > $ tree -ad -I.git > . > └── admin_scripts > ├── integchk > │ ├── 2012 > │ └── 2014 > ├── jrnadmin > │ ├── 2012 > │ └── 2014 > └── logarchiver > ├── 2012 > └── 2014 > > 10 directories > > The last commit in this repo was a rearrangement of the hierarchy > carried out using `git mv`. Before, the directory structure went > `admin_scripts/version/script_name` instead of > `admin_scripts/script_name/version`. > > Now I'm attempting to some new files that I've already created into > the repository, so that the repo now looks like this (`setup/2012` > contains files, while `setup/2014` is empty): > > $ tree -ad -I.git > . > └── admin_scripts > ├── integchk > │ ├── 2012 > │ └── 2014 > ├── jrnadmin > │ ├── 2012 > │ └── 2014 > ├── logarchiver > │ ├── 2012 > │ └── 2014 > └── setup > ├── 2012 > └── 2014 > > 13 directories > > Now, when I run 'git add admin_script/setup' to add the new directory > to the repo and then try to commit, I receive the following message: > > $ git commit > mv: cannot stat `admin_scripts/setup/2012/setup': No such file or > directory > > The error message is correct in that `admin_scripts/setup/2012/setup` > does not exist, either as a file or as a directory. However, I'm not > attempting to add this path at all. Using grep, I've confirmed that > the only place this path appears in any of my files is in `.git/index`. > > Also, I can commit to other places in the repository without > triggering any error. In addition, I can clone the repository to other > locations and apply the problematic commit manually. This is how I've > worked around the problem for now, and I've moved the repository > that's exhibiting problems to another directory and started work on > the cloned copy. > > Why is this spurious path appearing in the index? Is it a bug, or a > symptom that my repo has been somehow corrupted? Any help would be > greatly appreciated. > > Robert Irelan | Server Systems | Epic | (608) 271-9000 You have come to the right group. It might be difficult to tell (at least for me) if there is a bug or a corruption, May be some tests could help to bring more light into the darkness: What does "git status" (in the problematic repo) tell you? What does "git fsck" (in the problematic repo) tell you? What does "git ls-files" (in both repos) tell you? /Torsten ��.n��������+%������w��{.n��������n�r������&��z�ޗ�zf���h���~����������_��+v���)ߣ�