在倉庫目錄下新建一個名為.gitignore的文件(因為是點開頭,沒有文件名,沒辦法直接在windows目錄下直接創(chuàng)建,必須通過右鍵Git Bash,按照linux的方式來新建.gitignore文件)。如下圖所示。
.gitignore文件對其所在的目錄及所在目錄的全部子目錄均有效。通過將.gitignore文件添加到倉庫,其他開發(fā)者更新該文件到本地倉庫,以共享同一套忽略規(guī)則。
以下涉及的ignore文件均為如下格式:
# 以'#'開始的行,被視為注釋.
# 忽略掉所有文件名是 foo.txt的文件.
foo.txt
# 忽略所有生成的 html文件,
*.html
# foo.html是手工維護的,所以例外.
!foo.html
# 忽略所有.o和 .a文件.
*.[oa]
配置語法:
以斜杠“/”開頭表示目錄;
以星號“*”通配多個字符;
以問號“?”通配單個字符
以方括號“[]”包含單個字符的匹配列表;
以嘆號“!”表示不忽略(跟蹤)匹配到的文件或目錄;
常用的規(guī)則:
1)/mtk/ 過濾整個文件夾
2)*.zip 過濾所有.zip文件
3)/mtk/do.c 過濾某個具體文件
被過濾掉的文件就不會出現(xiàn)在git倉庫中(gitlab或github)了,當(dāng)然本地庫中還有,只是push的時候不會上傳。
需要注意的是,gitignore還可以指定要將哪些文件添加到版本管理中:
1)!*.zip
2)!/mtk/one.txt
唯一的區(qū)別就是規(guī)則開頭多了一個感嘆號,Git會將滿足這類規(guī)則的文件添加到版本管理中。
為什么要有兩種規(guī)則呢?想象一個場景:假如我們只需要管理/mtk/目錄中的one.txt文件,這個目錄中的其他文件都不需要管理,那么我們就需要使用:
1)/mtk/
2)!/mtk/one.txt
假設(shè)我們只有過濾規(guī)則,而沒有添加規(guī)則,那么我們就需要把/mtk/目錄下除了one.txt以外的所有文件都寫出來!
最后需要強調(diào)的一點是,如果你不慎在創(chuàng)建.gitignore文件之前就push了項目,那么即使你在.gitignore文件中寫入新的過濾規(guī)則,這些規(guī)則也不會起作用,Git仍然會對所有文件進行版本管理。
簡單來說,出現(xiàn)這種問題的原因就是Git已經(jīng)開始管理這些文件了,所以你無法再通過過濾規(guī)則過濾它們。因此一定要養(yǎng)成在項目開始就創(chuàng)建.gitignore文件的習(xí)慣,否則一旦push,處理起來會非常麻煩。
到此這篇關(guān)于git設(shè)置忽略文件.gitignore的方法的文章就介紹到這了,更多相關(guān)git 忽略文件.gitignore內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- Mac PyCharm中的.gitignore 安裝設(shè)置教程
- 詳解git中配置的.gitignore不生效的解決辦法
- git使用.gitignore設(shè)置不生效或不起作用問題的解決方法
- iOS 配置.gitignore文件詳細介紹