2013-07-26 77 views

回答

7

只是因爲你創建的文件夾的git不會自動啓動版本控制它。你創建的文件夾對git來說是未知的,所以git不會碰它。

git init #create repo 
touch file1.txt 
git add file1.txt 
git commit -m 'initial commit' 
git branch newBranch 
git checkout newBranch 
mkdir folder 
touch folder/file2.txt 
git add folder #tell git we want to track the folder 
git commit -m 'second commit' 
git checkout master 
# folder/file2.txt is not available as expected. 

編輯:爲了澄清在您的示例文件夾沒有添加到主,但實際上並沒有加入到任何一間分行。

+0

簡而言之,你說的是執行一個添加和提交,並且你會得到預期的結果。我測試了這個,它工作。謝謝。 – binarygiant

+0

正確,如果你沒有階段(添加)並提交你的文件git將採取安全路線,而不是惹他們。 –

7

看起來你有2個誤解讓你感到困惑。

  1. 當您切換分支時,Git不會覆蓋未分配的更改。你需要addcommit一個文件,然後Git會對該文件做任何事情(比如在你簽出不同的分支時修改或刪除它)。
  2. Git不跟蹤目錄,它只跟蹤文件。你不能在Git中創建一個空目錄。如果你想提交一個空目錄到Git,傳統的解決方法是在該目錄中添加一個空的.gitignore並提交。
相關問題