一、簡紹
我們做的每個git專案中都需要乙個「.gitignore」檔案,這個檔案的作用就是告訴git哪些檔案不需要新增到版本管理中。比如我們專案中的npm包(node_modules),它在我們專案中是很重要的,但是它佔的記憶體也是很大的,所以一般我們用git管理的時候是不需要新增npm包的。
二、常用的規則
/mtk/ 過濾整個資料夾
*.zip 過濾所有.zip檔案
/mtk/do.c 過濾某個具體檔案
以上規則意思是:被過濾掉的檔案就不會出現在你的github庫中了,當然本地庫中還有,只是push的時候不會上傳。
除了以上規則,它還可以指定要將哪些檔案新增到版本管理中。
!src/ 不過濾該資料夾
!*.zip 不過濾所有.zip檔案
!/mtk/do.c 不過濾該檔案
1、配置語法:
以斜槓/開頭表示目錄;
以星號*通配多個字元;
以問號?通配單個字元
以方括號包含單個字元的匹配列表;
以嘆號!表示不忽略(跟蹤)匹配到的檔案或目錄;
此外,git 對於 .ignore 配置檔案是按行從上到下進行規則匹配的,意味著如果前面的規則匹配的範圍更大,則後面的規則將不會生效;
2、示例說明
a、規則:fd1/*
說明:忽略目錄 fd1 下的全部內容;注意,不管是根目錄下的 /fd1/ 目錄,還是某個子目錄 /child/fd1/ 目錄,都會被忽略;
b、規則:/fd1/*
說明:忽略根目錄下的 /fd1/ 目錄的全部內容;
c、規則:
/*
!.gitignore
!/fw/bin/
!/fw/sf/
說明:忽略全部內容,但是不忽略 .gitignore 檔案、根目錄下的 /fw/bin/ 和 /fw/sf/ 目錄;
3、建立.gitignore檔案
常規的windows操作
根目錄下建立gitignore.txt;
編輯gitignore.txt,寫下你的規則,例如加上node_modules/;
開啟命令列視窗,切換到根目錄(可以直接在資料夾上面的位址列輸入cmd回車);
執行命令ren gitignore.txt .gitignore。
2) 用git bash
根目錄下右鍵選擇「git bash here」進入bash命令視窗;
輸入vim .gitignore或touch .gitignore命令,開啟檔案(沒有檔案會自動建立);
按i鍵切換到編輯狀態,輸入規則,例如node_modules/,然後按esc鍵退出編輯,輸入:wq儲存退出。
如圖:/node_modules
/build
.ds_store
npm-debug.log*
.ds_store:這個檔案是mac os x用來儲存資料夾的一些諸如自定義圖示,icon位置尺寸,視窗位置,顯示列表種類以及一些像窗體自定義背景樣式,顏色這樣的元資訊。預設情況下,mac os x下的每個資料夾下應該都會生成乙個,包括網路介質儲存盤和u盤這樣的外部裝置。
image.png
npm-debug.log:專案主目錄下總是會出現這個檔案,而且不止乙個,原因是npm i 的時候,如果報錯,就會增加乙個此檔案來顯示報錯資訊,npm install的時候則不會出現。
最後需要強調的一點是,如果你不慎在建立.gitignore檔案之前就push了專案,那麼即使你在.gitignore檔案中寫入新的過濾規則,這些規則也不會起作用,git仍然會對所有檔案進行版本管理。
簡單來說,出現這種問題的原因就是git已經開始管理這些檔案了,所以你無法再通過過濾規則過濾它們。因此一定要養成在專案開始就建立.gitignore檔案的習慣,否則一旦push,處理起來會非常麻煩。
23人點贊
自樹一幟
gitignore檔案使用說明
zhuan 一般我們總會有些檔案無需納入 git 的管理,也不希望它們總出現在未跟蹤檔案列表。通常都是些自動生成的檔案,像是日誌或者編譯過程中建立的等等。我們可以建立乙個名為.gitignore的檔案,列出要忽略的檔案模式,來看乙個簡單的例子 cat gitignore oa 第一行告訴 git 忽...
gitignore格式說明詳解
在 gitignore 檔案中,每一行的忽略規則的語法如下 1 空格不匹配任意檔案,可作為分隔符,可用反斜槓轉義 2 以 開頭的行都會被 git 忽略。即 開頭的檔案標識注釋,可以使用反斜槓進行轉義。3 可以使用標準的glob模式匹配。所謂的glob模式是指shell所使用的簡化了的正規表示式。4 ...
gitignore檔案語法
gitignore問卷位置 在專案根目錄下建立乙個名為.gitignore的檔案 注意檔案的前面有個點 用於記錄忽略規則。注 windows下不可以按常規方法新建.gitignore檔案,需要在命令列中進行建立 如 git base下 touch gitignore ignore檔案語法 1 注釋 ...