GitLab/GitHub上傳項目時忽略文件規則

平時使用idea或者eclipse時總會有一些自動生成的文件,比如日誌文件、編譯文件,但是項目上傳的時候這些文件是不需要的,而且浪費空間導致項目非常大,所以這些沒有用的文件上傳的時候需要通過.ignore過濾掉,接下來說一下過濾規則。
git 對於 .ignore 配置文件是按行從上到下進行規則匹配的,意味着如果前面的規則匹配的範圍更大,則後面的規則將不會生效;
以斜槓“/”開頭表示目錄;

以星號“*”通配多個字符;

以問號“?”通配單個字符

以方括號“[]”包含單個字符的匹配列表;

以歎號“!”表示不忽略(跟蹤)匹配到的文件或目錄;

Windows系統下:
在項目文件中創建一個名爲 .gitignore 的文件,列出要忽略的文件模式。

文件中每一行表示需要忽略的文件的正則表達式。
$cat .gitignore 

#ignore .metadata
.metadata
// 有個.metadata,這個是我們不需要的

.gitignore
// 如果不加.gitignore這行,git會把.gitignore也加入版本控制中
#ignore obj and lib file

*.[oa]
// 告訴 Git 忽略所有以 .o 或 .a 結尾的文件

Mac系統下:
cd至Repository的本地目錄:

cd ~/Documents/GitHub/Repository

刪除當前目錄中所有.DS_Store文件:

find . -name .DS_Store -print0 | xargs -0 git rm -f --ignore-unmatch

在當前文件夾以及當前文件夾的子文件夾中找到所有的.DS_Store文件,並將找到的文件通過管道傳給xargs來處理。注意幾個參數的理解:
-print0
在find後不添加換行符(-print默認會添加換行符)
-0
將管道送來的字符串當做普通的字符串,不做任何轉義處理

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章