thillaiselvan
thillaiselvan

Reputation: 637

git status for cloned repository shows file deleted

I have migrated a cvs repository to git repository and it is in the server. In my local I tried to clone that repository. It got cloned. But when I checked the git status it shows the result as follows for example.

$ cd FMS_RE_ENGG/

$ git status


#   deleted:    FMS_RE_ENGG/Gemfile
#   deleted:    FMS_RE_ENGG/Gemfile.lock
#   deleted:    FMS_RE_ENGG/PACKAGING/CONFIG/fms-frontend.ini
#   deleted:    FMS_RE_ENGG/PACKAGING/DEBIAN/postinst
#   deleted:    FMS_RE_ENGG/PACKAGING/DEBIAN/postrm
#   deleted:    FMS_RE_ENGG/PACKAGING/DEBIAN/preinst
#   deleted:    FMS_RE_ENGG/PACKAGING/DEBIAN/prerm
#   deleted:    FMS_RE_ENGG/PACKAGING/DEBIAN/templates

etc.,

What is the problem? Why I didn't get the source files? If I ran the git checkout FMS_RE_ENGG after cloned it, then I am able to get it. Why it is not giving the source files at the moment of cloning itself?

Upvotes: 11

Views: 8154

Answers (4)

NehaB
NehaB

Reputation: 31

Just try below command. It worked for me.

git checkout -f HEAD

Upvotes: 3

warywombat
warywombat

Reputation: 41

You have probably used git fast-import to fill your repository with the cvs data. This will modify the data structures inside your .git subdirectories but it will not create a working checkout.

So git status "thinks" that you have deleted ALL your files and that the next commit will remove them from the repository.

Just do git reset --hard to reset your working copy to a clean checkout from your master branch.

Upvotes: 4

kostix
kostix

Reputation: 55443

What does git branch -a show you after cloning is complete? The problem might be in that git clone asks the remote which branch it has as its current branch and reflects this in the cloned (your local) repo.

Supposedly either your conversion tool screwed something or the remote repo is somehow screwed with respect to its idea about its active branch.

We need more information from you to make better guesses.

Upvotes: 0

enderland
enderland

Reputation: 14135

If I understand you correctly, I assume you are grabbing the repository via a basic clone command like

git clone gitRepositoryLink

When you run:

git checkout FMS_RE_ENGG

this is checking out a different branch within your GIT repository. If your source files are part of the FMS_RE_ENGG branch but not the master branch, when you clone the repository you will not see your source files, because you are not working on the FMS_RE_ENGG branch.

Upvotes: 0

Related Questions