在開發專案時,工作目錄下可能經常會有新的檔案產生 (可能是那些暫存檔案或快取檔案),可能有許多檔案並不需要列入版本控管,所以必須要排除這些檔案,我們稱為「忽略清單」 ( ignoring files )。
我們今天一樣透過實作練習在了解 「忽略清單 ( ignoring ) 」
首先,在 .git 的目錄路徑之下,有一個 .git/info/exclude 檔案,我們可以透過編輯這個檔案,來建立忽略清單。
■ .git/info/exclude
■ Github ignoring files 範本:https://github.com/github/gitignore
若有些檔案不需要上傳到 Git 文件,可以編輯 .git/info/exclude,增加過瀘條件。
1 |
nano .git/info/exclude |
在文件內,加上欲〝忽略〞的文件。如下圖所示:
加入想忽略的文件
被忽略的文件,即使使用〝 git add * 〞的指令,也不會將這些檔案加入 git index 裡面。
若想要讓所有的 .txt 檔案都 ignore 掉,可以使用〝 *.txt〞。如下圖所示:
用 *.txt 來忽略掉所有的 txt 檔的所有檔案
■ 多人 ignore 文件
上述方法雖然可以 ignore 文件,但 git 是一個多人使用的系統,所以其他人也可能會使用 .txt 檔文件,但卻不知道怎麼 ignore 掉,所以可以用 .gitignore 去設定讓所有人去忽略相同文件。
我們先把 .git/info/exclude 先把 *.txt 這一行拿掉。這時候我們再看 git status ,demo.txt 就又會出現了。
我們新增 .gitignore 文件,並將要忽略的檔案存入
1 |
nano .gitignore |
新增 .gitignore 文件,並將要忽略的檔案存入
我們再來下一次 git status 來看目前 git 狀態。
demo.txt 已經被忽略掉,只剩一個 .gitignore 檔案
此時,我們只需要把 .gitignore 上傳到 git 上面去,那麼所有人就可以透過這個設定檔來進行忽略規則。
1 |
git add .gitignore |
在這邊如果使用 git add * ,.gitignore 也會被忽略掉而無法添加,所以必須指定檔名:.gitignore
■ 移除添加 git index
我們如果不小心加了 git add 文件,想要移除,則可以透過 git rm –cached 來取消。
1 |
git rm --cached .gitignore |