回答
它是git陷阱之一mentioned here(pre Git 2.0)。
git add .
只增加了什麼,沒有被刪除(如果跟蹤)。
git add .
git commit
git status
//hey! why didn't it commit my deletes?, Oh yeah, silly me
git add -u .
git commit --amend
git add -A
會照顧兩個步驟...
隨着Git 2.0, git add -A
is default。
git add <path>
是一樣的「git add -A <path>
」現在,讓 「git add dir/
」會發現你的路徑從目錄和 記錄去除去除。
在舊版本的Git中,「git add <path>
」用於忽略刪除。你可以說「
git add --ignore-removal <path>
」到 如果你真的想在<path>
上只添加添加或修改的路徑。
警告(git1.8.3 April 2013, for upcoming git2.0)。
我已經修改我的答案說git add -u .
,而不是git add -u
:
git add -u
將Git中2.0對整個樹操作的一致性「git commit -a
」等命令。
由於沒有任何機制可以使「git add -u
」的行爲與「git add -u .
」相同,因此對於習慣於「git add -u
」(無pathspec)的用戶來說,更新僅適用於當前子目錄中的路徑以開始訓練其路徑的用戶是 手指在Git 2.0到來之前明確表示「git add -u .
」。
正如我在 「e」
就像手冊說的那樣:git add .
會在當前目錄中添加所有文件,而git add -u .
只會添加那些已經被跟蹤的文件。
提到的'添加-u'也將上演刪除。 – 2010-02-03 07:56:31
只有當被刪除的文件被跟蹤時; – 2010-02-03 07:57:59
add -u是提交-a等效的一種(在它操作的文件中)。 – 2010-02-03 09:26:17
- 1. git add *和git add。有什麼區別?
- 2. git add有什麼區別?和git add -A?
- 3. 「git clone」和「git remote add」有什麼區別?
- 4. 「git add」和「git update-index」有什麼區別
- 5. git add之間的任何區別。和git add --all?
- 6. JetBrains IDE上的`git add -u`
- 7. git add -A vs git add file
- 8. $ git add --all vs $ git add *之間的區別?
- 9. 在git GUI中,Git add(ctrl + A)和Stage to Commit(ctrl + T)有什麼區別?
- 10. git add *(星號)vs git add。 (期)
- 11. 結合git add。和git commit
- 12. (git add -A後跟git commit)和git commit -a之間的區別?
- 13. ObjectCache的「Set」和「Add」有什麼區別?
- 14. submodule add和init有什麼區別?
- 15. drupal(add container)和(add forum)有什麼區別?
- 16. Java 9中--add-exports和--add-opens有什麼區別?
- 17. MySQL中的「ADD KEY」和「ADD INDEX」有什麼區別?
- 18. 「git checkout」和「git checkout - 」有什麼區別?
- 19. 是在Git 2.x`git add .`和`git add -A`是否一樣?
- 20. git add和git commit之間的區別-a
- 21. git add之間的區別。和git commit -am「message」
- 22. `git add -p`有什麼選擇?
- 23. git add dirname/*
- 24. 獲取「git add -u」的預覽版?
- 25. git add。加入
- 26. git add remote branch
- 27. `git diff`和`git difftool`有什麼區別?
- 28. git am和git apply有什麼區別?
- 29. 「git reset」和「git rebase」有什麼區別?
- 30. git-stash和git-checkout有什麼區別?
感謝您的回答和一個例子。 「嘿!」線真的幫助我。 – 2010-02-03 14:15:42
@TK:是的,Benjol(http://stackoverflow.com/users/11410/benjol)的例子是一個很好的例子。 – VonC 2010-02-03 14:18:28
看來我們不需要把'.'(pathspec)和Git 2.x結合起來。它在我測試時可以找到。 – 2015-07-24 03:26:52