起因
在使用git對軟件進行版本管理的時候我們總有一些不需要提交到版本庫里的文件和文件夾,或者在管理一個實際應(yīng)用的開源項目的時候,不可以把帶有數(shù)據(jù)庫信息的文件上傳到開源平臺當(dāng)中,這個時候我們就需要讓git自動忽略掉一下文件。
關(guān)于.gitignore
為了讓 git 忽略指定的文件和文件夾,我們需要在項目的根目錄當(dāng)中創(chuàng)建.gitignore文件。這個文件的名字還是挺好記的吧,由 git+ignore 兩個單詞組成,創(chuàng)建的過程當(dāng)中不要忘記前面的點。
注意: 在windows當(dāng)中創(chuàng)建這個.gitignore文件的時候可能會無法創(chuàng)建出來,因為windows的文件管理器強制要求有.后綴的文件應(yīng)該有個文件名。這點不用擔(dān)心,直接在文本編輯器或者IDE里保存這個文件就可以創(chuàng)建文件了。
使用 .gitignore
使用.gitignore文件的方式很簡單,只需要在文件里輸入你想忽略的文件的規(guī)則就可以了,下面舉個例子。
比如我的項目想忽略掉node_modules這個文件夾,直接輸入:
node_modules/
就可以了,再次 commit 的時候就會忽略掉這個文件夾。
如果想忽略一個文件比如忽略oauth.json,再輸入:
oauth.json
node_modules/
這樣就可以了。
如果想忽略掉所有的后綴為.json的文件,那么就輸入:
*.json
oauth.json
node_modules/
那么這樣所有的.json的文件就會被全部忽略,git就不會掃描和提交這些文件了。
總結(jié)
根據(jù)上面的實例我們總結(jié),在.gitignore文件當(dāng)中,一行代表一條忽略規(guī)則,如果是一個帶.這種有后綴的字符串那么 git 就會忽略這個文件。*表示的就是選中所有,如果沒有.就表示一個文件夾,上面的 node_modules 也可以不加/,/的主要目的是為了表示路徑,比如你有可能想要忽略掉 node_modules/app 文件夾那么就會用到/。
另外https://github.com/github/gitignore github提供了一個通用的.gitignore庫,如果懶得自己設(shè)置,可以直接在這個庫里找找有沒有你想要的忽略文件。