git add用法詳解
阿新 • • 發佈:2019-02-04
一、前言
git add命令主要用於把我們要提交的檔案的資訊新增到索引庫中。當我們使用git commit時,git將依據索引庫中的內容來進行檔案的提交。
二、基本
git add <path>表示 add to index only files created or modified and not those deleted
我通常是通過git add <path>的形式把我們<path>新增到索引庫中,<path>可以是檔案也可以是目錄。
git不僅能判斷出<path>中,修改(不包括已刪除)的檔案,還能判斷出新添的檔案,並把它們的資訊新增到索引庫中。
三、git add -u
git add -u 表示 add to index only files modified or deleted and not those created
git add -u [<path>]: 把<path>中所有tracked檔案中被修改過或已刪除檔案的資訊新增到索引庫。它不會處理untracted的檔案。
省略<path>表示.,即當前目錄。
四、git add -A
git add -A: [<path>]表示把<path>中所有tracked檔案中被修改過或已刪除檔案和所有untracted的檔案資訊新增到索引庫。
省略<path> 表示.,即當前目錄。
五、git add -i
我們可以通過git add -i [<path>]命令檢視<path>中被所有修改過或已刪除檔案但沒有提交的檔案,
並通過其revert子命令可以檢視<path>中所有untracted的檔案,同時進入一個子命令系統。
比如:
git add -i
staged unstaged path
1: +0/-0 nothing branch/t.txt
2: +0/-0 nothing branch/t2.txt
3: unchanged +1/-0 readme.txt
*** Commands ***
1: [s]tatus 2: [u]pdate 3: [r]evert 4: [a]dd untracked
5: [p]atch 6: [d]iff 7: [q]uit 8: [h]elp
What now>
這裡的t.txt和t2.txt表示已經被執行了git add,待提交。即已經新增到索引庫中。
readme.txt表示已經處於tracked下,它被修改了,但是還沒有被執行了git add。即還沒新增到索引庫中。
5.1、revert子命令
可以通過git add -i的revert子命令(3: [r]evert)把已經新增到索引庫中的檔案從索引庫中剔除。
(3: [r]evert)表示通過3或r或revert加回車執行該命令。執行該命令後,git會例出索引庫中的檔案列表.
然後通過數字來選擇。輸入"1"表示git會例出索引庫中的檔案列表中的第1個檔案。
"1-15"表示git會例出索引庫中的檔案列表中的第1個檔案到第15個檔案.回車將執行。
如果我們不輸入任何東西,直接回車,將結束revert子命令,返回git add -i的主命令列。
5.2、update子命令
可以通過update子命令(2: [u]pdate)把已經tracked的檔案新增到索引庫中。其操作和revert子命令類似。
5.3、add untracked子命令
通過add untracked子命令(
git add命令主要用於把我們要提交的檔案的資訊新增到索引庫中。當我們使用git commit時,git將依據索引庫中的內容來進行檔案的提交。
二、基本
git add <path>表示 add to index only files created or modified and not those deleted
我通常是通過git add <path>的形式把我們<path>新增到索引庫中,<path>可以是檔案也可以是目錄。
git不僅能判斷出<path>中,修改(不包括已刪除)的檔案,還能判斷出新添的檔案,並把它們的資訊新增到索引庫中。
三、git add -u
git add -u 表示 add to index only files modified or deleted and not those created
git add -u [<path>]: 把<path>中所有tracked檔案中被修改過或已刪除檔案的資訊新增到索引庫。它不會處理untracted的檔案。
省略<path>表示.,即當前目錄。
四、git add -A
git add -A: [<path>]表示把<path>中所有tracked檔案中被修改過或已刪除檔案和所有untracted的檔案資訊新增到索引庫。
省略<path>
五、git add -i
我們可以通過git add -i [<path>]命令檢視<path>中被所有修改過或已刪除檔案但沒有提交的檔案,
並通過其revert子命令可以檢視<path>中所有untracted的檔案,同時進入一個子命令系統。
比如:
git add -i
staged unstaged path
1: +0/-0 nothing branch/t.txt
2: +0/-0 nothing branch/t2.txt
3: unchanged +1/-0 readme.txt
*** Commands ***
1: [s]tatus 2: [u]pdate 3: [r]evert 4: [a]dd untracked
5: [p]atch 6: [d]iff 7: [q]uit 8: [h]elp
What now>
這裡的t.txt和t2.txt表示已經被執行了git add,待提交。即已經新增到索引庫中。
readme.txt表示已經處於tracked下,它被修改了,但是還沒有被執行了git add。即還沒新增到索引庫中。
5.1、revert子命令
可以通過git add -i的revert子命令(3: [r]evert)把已經新增到索引庫中的檔案從索引庫中剔除。
(3: [r]evert)表示通過3或r或revert加回車執行該命令。執行該命令後,git會例出索引庫中的檔案列表.
然後通過數字來選擇。輸入"1"表示git會例出索引庫中的檔案列表中的第1個檔案。
"1-15"表示git會例出索引庫中的檔案列表中的第1個檔案到第15個檔案.回車將執行。
如果我們不輸入任何東西,直接回車,將結束revert子命令,返回git add -i的主命令列。
5.2、update子命令
可以通過update子命令(2: [u]pdate)把已經tracked的檔案新增到索引庫中。其操作和revert子命令類似。
5.3、add untracked子命令
通過add untracked子命令(