在实际的工程项目中,除了项目本身的代码文件、配置文件外,还有一些文件或目录并不需要纳入版本管理中,如idea工具会在工程根目录生成一个.idea的目录、工程编译后生的target等。因此在提交代码文件的时候需要自动把这些目录或文件自动忽略掉。在Git工作区的根目录下创建一个特殊的.gitignore文件,并配置一定的忽略规则,Git就会自动忽略这些文件或目录,避免不必要的文件上传到远程。
对于不同的语言的工程项目,其具体需要忽略的内容是不一样的,但是忽略规则配置是遵循相同的语法规则的,具体如下:
其实忽略规则的匹配语法和正则表达式比较类似,如果对正则表达式比较熟悉的话,理解这个规则相对容易得多。
这里举例说明几个常用的场景:
这里举例说明java项目中常用的忽略模式,实际可以根据实际需求自由裁剪。
- # Created by .ignore support plugin (hsz.mobi)
- ### Java template
- # Compiled class file
- *.class
-
- # Log file
- *.log
-
- # BlueJ files
- *.ctxt
-
- # Mobile Tools for Java (J2ME)
- .mtj.tmp/
-
- # Package Files #
- *.jar
- *.war
- *.nar
- *.ear
- *.zip
- *.tar.gz
- *.rar
-
- # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
- hs_err_pid*
-
在idea中安装.ignore插件,有两种方法:
一、直接在线安装file--->plugins--->browse repositories--->搜索.ignore--->install;
二、在idea官网下载与自己所有idea版本匹配的.ignore插件,然后file--->plugins--->install plugin from disk;
如果所在工程项目内没有.gitigonre文件,可以通过file--->new--->.ignore file--->.gitigore file(git)创建一个,创建的时候还可以选择工程所用的语言、工具等信息。如果使用idea开发java项目,java、jetbrains最好选中。
已经有了.gitignore文件后,在想要忽略的文件或目录上右键弹窗--->add to .gitignore file,就可以忽略想要的文件或目录了。
系统性的梳理了一下.gitignore文件的作用、匹配语法、如何结合idea编程工具来使用.ignore插件,其实没有那么复杂,so easy!