RE: "git commit" fails due to spurious file in index

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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���)ߣ�

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]