.gitignore詳解(附上eclipse的java專案的 .gitignore檔案)
今天講講Git中非常重要的一個檔案――.gitignore。
首先要強調一點,這個檔案的完整檔名就是“.gitignore”,注意最前面有個“.”。這樣沒有副檔名的檔案在Windows下不太好建立,這裡給出win7的建立方法:
建立一個檔案,檔名為:“.gitignore.”,注意前後都有一個點。儲存之後系統會自動重新命名為“.gitignore”。
一般來說每個Git專案中都需要一個“.gitignore”檔案,這個檔案的作用就是告訴Git哪些檔案不需要新增到版本管理中。
實際專案中,很多檔案都是不需要版本管理的,比如Python的.pyc檔案和一些包含密碼的配置檔案等等。
這個檔案的內容是一些規則,Git會根據這些規則來判斷是否將檔案新增到版本控制中。
下面我們看看常用的規則:
/mtk/ 過濾整個資料夾
*.zip 過濾所有.zip檔案
/mtk/do.c 過濾某個具體檔案
很簡單吧,被過濾掉的檔案就不會出現在你的GitHub庫中了,當然本地庫中還有,只是push的時候不會上傳。
需要注意的是,gitignore還可以指定要將哪些檔案新增到版本管理中:
!*.zip
!/mtk/one.txt
唯一的區別就是規則開頭多了一個感嘆號,Git會將滿足這類規則的檔案新增到版本管理中。
為什麼要有兩種規則呢?想象一個場景:我們只需要管理/mtk/目錄中的one.txt檔案,這個目錄中的其他檔案都不需要管理。那麼我們就需要使用:
/mtk/
!/mtk/one.txt
假設我們只有過濾規則沒有新增規則,那麼我們就需要把/mtk/目錄下除了one.txt以外的所有檔案都寫出來!
最後需要強調的一點是,如果你不慎在建立.gitignore檔案之前就push了專案,那麼即使你在.gitignore檔案中寫入新的過濾規則,這些規則也不會起作用,Git仍然會對所有檔案進行版本管理。
簡單來說,出現這種問題的原因就是Git已經開始管理這些檔案了,所以你無法再通過過濾規則過濾它們。
所以大家一定要養成在專案開始就建立.gitignore檔案的習慣,否則一旦push,處理起來會非常麻煩。
附上eclipse的java專案的 .gitignore檔案
文章來源:https://blog.csdn.net/jkxqj/article/details/55670657/.settings/ /target/ # built application files *.apk *.ap_ # files for the dex VM *.dex # Java class files *.class *.jar # generated files bin/ gen/ # Eclipse project files .classpath .project .DS_Store