1. 程式人生 > >如何建立.gitignore檔案,忽略git不必要提交的檔案

如何建立.gitignore檔案,忽略git不必要提交的檔案

1、在需要建立 .gitignore 檔案的資料夾, 右鍵選擇Git Bash 進入命令列,進入專案所在目錄。

2、輸入 touch .gitignore ,生成“.gitignore”檔案。

3、在”.gitignore” 檔案裡輸入你要忽略的資料夾及其檔案就可以了。(注意格式)

我的 .gitignore:

.deploy_git/
node_modules/
public/

 

 

.gitignore檔案失效問題

比如在一個本地倉庫中,產生了諸多的日誌記錄,而這些記錄都是本地操作產生的,我們不必將其提交到遠端倉庫中,那麼我們在.gitignore

中添加了logs/20150514.log的過濾規則,但是在使用git status的時候,還是可以看到modified:logs/20150514.log,說明規則沒有起作用。

為什麼增加了.gitignore裡的規則卻沒有效果呢?
這是因為.gitignore檔案只能作用於Untracked Files,也就是那些從來沒有被Git記錄過的檔案(自新增以後,從未add及commit過的檔案)。

之所以規則不生效,是因為那些.log檔案曾經被Git記錄過,因此.gitignore對它們完全無效,解決辦法如下:

  • 從Git的資料庫中刪除對於該檔案的追蹤;
  • 把對應的規則寫入.gitignore,讓忽略真正生效;
  • 提交+推送

只有這樣做,所有的團隊成員才會保持一致而不會有後遺症,也只有這樣做,其他的團隊成員根本不需要做額外的工作來維持對一個檔案的改變忽略。

最後有一點需要注意的,git rm –cached logs/20150514.log 刪除的是追蹤狀態,而不是物理檔案;如果你真的是徹底不想要了,你也可以直接 rm+忽略+提交。