"git commit" fails due to spurious file in index

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

 



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
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[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]