Subject: Re: index file list files not found in working tree

From: John Keeping <[email-masked]>
Date: Tue, 25 Aug 2015 11:32:14 +0100

On Tue, Aug 25, 2015 at 12:16:43PM +0200, Rafik E Younan wrote:
> I got a recommendation to use reset --hard. I tried it and it says the 
> HEAD is now at correct commit, but missing files are not restored!
> 
> I tried `ls-tree --name-only` and it lists missing files and folders, 
> but the actual working tree doesn't have these files and folders.

Is there any chance that you have enabled sparse checkouts?  See the
documentation at the bottom of git-read-tree(1).

> On 08/24/2015 12:34 PM, Rafik E Younan wrote:
> > Hi,
> >
> > After several merges and rebases I finally got my branches and history 
> > to reflect valid commits and proper history. Everything is pushed to 
> > internal bare repo and the remotes seems OK.
> >
> > When I clone the updated repository, all branches reflect the correct 
> > updated trees and blobs.
> >
> > The problem occurs only on the original local repository where all the 
> > merging and re-basing took place!
> >
> > When I checkout a branch, several files and folders are deleted from 
> > the working tree. When I examine the history of these files, there are 
> > only commits of adding them and modifying them but no log for deleting 
> > them, and they aren't deleted when I checkout the same branch in 
> > another fresh cloned repo.
> >
> > Git status command doesn't indicate any changes in these files. I 
> > found the files and folders names in the `.git/index` file. So after 
> > manually removing the `.git/index` file and usinge `git reset` 
> > command, `git status` indicates that the files and folders are deleted.
> >
> > I use `git checkout -- <File_or_folder_names>...` and restore all 
> > missing files and folders, just then the working tree matches the 
> > fresh checkout of the same branch on any other cloned repo.
> >
> > After examining the tree object of the current commit, all files and 
> > folders exists, although clearly the checkout missed some of them!
> >
> > Because the repository is local and private, I can't share any url for 
> > publicly accessible repository, and if one exists, no problem could be 
> > found, because the problem resides in just this certain local clone.
> >
> > Answering the following questions might give some clues for the problem:
> > * How does git populate the index file after every branch checkout?
> > * Is there any object to reflect the content of the index file?
> >
> > I would appreciate any pointers for where the problem could be.
> >
> > Thanks,
> > Rafik
> >
> 
> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to [email-masked]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html