git的分支與合并的兩種方法
git add -A和 git add . git add -u在功能上看似很相近,但還是存在一點差別
git add . :他會監(jiān)控工作區(qū)的狀態(tài)樹,使用它會把工作時的所有變化提交到暫存區(qū),包括文件內(nèi)容修改(modified)以及新文件(new),但不包括被刪除的文件。
git add -u :他僅監(jiān)控已經(jīng)被add的文件(即tracked file),他會將被修改的文件提交到暫存區(qū)。add -u 不會提交新文件(untracked file)。(git add –update的縮寫)
git add -A :是上面兩個功能的合集(git add –all的縮寫)
下面是具體操作例子,方便更好的理解(Git version 1.x):
git init echo Change me > change-me echo Delete me > delete-me git add change-me delete-me git commit -m initial echo OK >> change-me rm delete-me echo Add me > add-me git status # Changed but not updated: # modified: change-me # deleted: delete-me # Untracked files: # add-me git add . git status # Changes to be committed: # new file: add-me # modified: change-me # Changed but not updated: # deleted: delete-me git reset git add -u git status # Changes to be committed: # modified: change-me # deleted: delete-me # Untracked files: # add-me git reset git add -A git status # Changes to be committed: # new file: add-me # modified: change-me # deleted: delete-me
總結(jié):
-
git add -A 提交所有變化
-
git add -u 提交被修改(modified)和被刪除(deleted)文件,不包括新文件(new)
-
git add . 提交新文件(new)和被修改(modified)文件,不包括被刪除(deleted)文件
git版本不同會有所區(qū)別:
Git Version 1.x:
Git Version 2.x:
推薦教程:《Java教程》