Git add 常見用法
Git add
git add [引數] [--] <路徑> //作用就是將我們需要提交的程式碼從工作區新增到暫存區,就是告訴git系統,我們要提交哪些檔案,之後就可以使用git commit命令進行提交了。
為了方便下面都用 . 來標識路徑, . 表示當前目錄,路徑可以修改,下列操作的作用範圍都在版本庫之內。
1.1 git add .
不加引數預設為將修改操作的檔案和未跟蹤新新增的檔案新增到git系統的暫存區,注意不包括刪除
1.2 git add -u .
-u == --update ,表示將已跟蹤檔案中的修改和刪除的檔案新增到暫存區,不包括新增加的檔案,注意這些被刪除的檔案被加入到暫存區再被提交併推送到伺服器的版本庫之後這個檔案就會從git系統中消失了。
1.3 git add -A .
-A == --all , 表示將所有的已跟蹤的檔案的修改與刪除和新增的未跟蹤的檔案都新增到暫存區。
1.4 git add -i .
日常工作中瞭解前三個命令已足夠能滿足我們的使用需求了,但是瞭解一下這個互動式揀選操作也是不錯的。這個命令它也是作用於版本庫中已被跟蹤的檔案中的執行過修改與刪除操作的檔案。
git add -i
staged unstaged path
1: +0/-0 nothing Testfile
*** Commands ***
1: status 2: update 3: revert 4: add untracked
5: patch 6: diff 7: quit 8: help
What now>
1.4.1、revert子命令
可以通過git add -i的revert子命令(3: [r]evert)把已經新增到索引庫中的檔案從索引庫中剔除。
(3: revert)表示通過3或r或revert加回車執行該命令。執行該命令後,git會例出索引庫中的檔案列表.
然後通過數字來選擇。輸入"1"表示git會例出索引庫中的檔案列表中的第1個檔案。
"1-15"表示git會例出索引庫中的檔案列表中的第1個檔案到第15個檔案.回車將執行。
如果我們不輸入任何東西,直接回車,將結束revert子命令,返回git add -i的主命令列。
1.4.2 update子命令
可以通過update子命令(2: [u]pdate)把已經tracked的檔案新增到索引庫中。其操作和revert子命令類似。
1.4.3 add untracked子命令
通過add untracked子命令(4: [a]dd untracked)可以把還沒被git管理的檔案新增到索引庫中。其操作和revert子命令類似。
1.4.4 diff子命令
可以通過diff子命令(6: [d]iff)可以比較索引庫中檔案和原版本的差異。其操作和revert子命令類似。
1.4.5 status子命令
status子命令(1: [s]tatus)功能上和git add -i相似
1.4.6 quit子命令
quit子命令(7: [q]uit)用於退出git add -i命令系統
1.5 git add -h
檢視幫助,使用git add --help可以檢視更詳細的內容