2012-05-13 55 views
1

如果git status顯示:Git顯示刪除了一個文件夾,但git結賬<folder_name>無法恢復?

$ git status 
# On branch master 
# Changes to be committed: 
# (use "git reset HEAD <file>..." to unstage) 
# 
# deleted: FooBar.xcodeproj/project.pbxproj 

是不是應該git checkout要拿回來?

$ git checkout FooBar.xcodeproj 
error: pathspec 'FooBar.xcodeproj' did not match any file(s) known to git. 

git如何正確恢復此文件夾?

+2

嘗試什麼要求你'(使用「git的重置頭 ...」來unstage)' –

+1

有問題的文件名是'FooBar.xcodeproj/project.pbxproj',而不僅僅是'FooBar.xcodeproj'。 –

回答

3

FooBar.xcodeproj顯然是一個目錄,而不是直接在版本控制之下。你可能試着做的是迫使它再次檢出文件:

git checkout -- FooBar.xcodeproj/project.pbxproj 
1

你在想這個svn。這不是git的工作原理。你不簽出子目錄。

如果你想重新設置特定文件的頭部,你重新設置,如:

git reset HEAD filename