【git】.gitignore 忽略target、.idea文件夾等


1.需求:

項目中如日志,臨時文件,編譯的中間文件等不想提交到代碼倉庫,

2.方案:

這時就要設置相應的忽略規則,來忽略這些文件的提交。在項目根路徑添加.gitignore文件,內容如下,匹配規則按行從上到下

  1. #忽略所有.svn目錄
  2. .svn/
  3. #忽略所有target目錄
  4. target/
  5. #忽略所有.idea目錄
  6. .idea/
  7. #忽略所有.iml文件
  8. *.iml
     
     
    .mymetadata
    .checkstyle
    .classpath
    .project
    .class
    .war
    .zip
    .rar
    .idea
    *.iml
    .settings/*
    /indexes/*
    /target/*
    /src/main/webapp/WEB-INF/classes/*
    /src/main/webapp/userfiles/*
    /target/
    /src/main/resources/rebel.xml
    /src/main/resources/jeesite.properties

語法 含義
/ 目錄
* 多個字符
? 單個字符
[] 多個可選字符匹配單個字符
! 不忽略(跟蹤)匹配到的文件或目錄

詳細的規則可以參考官方英文文檔

3 .gitignore規則不生效

3.1 現象

不小心在IDE提示是否添加到git時,點了確定,發現管理了.idea、target文件夾,

然后添加.gitignore文件夾,配置了以上規則,但是重新編譯后,target的修改在git status還是顯示了修改!?

3.2 原因

.gitignore只能忽略那些原來沒有被track(之前沒有add過)的文件,如果某些文件已經被納入了版本管理中,則修改.gitignore是無效的。

3.3 解決方案  在目標文件夾下右鍵 git bash ,即可調出控制台輸入命令行:

解決方法就是先把本地緩存刪除(改變成未track狀態),然后再提交:

  1. git rm -r --cached target
  2. git rm -r --cached .idea

此后不再追蹤track這兩個文件夾


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM