【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