.gitignore详解(附上eclipse的java项目的 .gitignore文件)

今天讲讲Git中很是重要的一个文件――.gitignore。html

首先要强调一点,这个文件的完整文件名就是“.gitignore”,注意最前面有个“.”。这样没有扩展名的文件在Windows下不太好建立,java

这里给出win7的建立方法:git

建立一个文件,文件名为:“.gitignore.”,注意先后都有一个点。保存以后系统会自动重命名为“.gitignore”web

通常来讲每一个Git项目中都须要一个“.gitignore”文件,这个文件的做用就是告诉Git哪些文件不须要添加到版本管理中。app

实际项目中,不少文件都是不须要版本管理的,好比Python的.pyc文件和一些包含密码的配置文件等等。eclipse

这个文件的内容是一些规则,Git会根据这些规则来判断是否将文件添加到版本控制中。ide

下面咱们看看经常使用的规则:post

/mtk/ 过滤整个文件夹gradle

*.zip 过滤全部.zip文件ui

/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仍然会对全部文件进行版本管理。

那好,如何正确使用.gitignore呢?这也是一门大学问。是否是项目作到一半,而后再添加.gitignore呢?不是的,最好的是你项目刚建立,项目尚未进行git版本控制的时候,首先在项目目录下加入.gitignore文件,即首先对.gitignore进行版本控制,而后在对项目进行版本控制。可是若是你是后来才加入.gitignore呢?就可能会出现以下问题:

 


或者.DS_Store等文件不断的提醒我又被修改了。。。只是由于这些文件先于.gitignore进行版本控制了。此时你可使用以下命令来让.gitignore忽视它:

git rm --cached -r 文件名

那么下次git就会忽视这些文件了。

 

简单来讲,出现这种问题的缘由就是Git已经开始管理这些文件了,因此你没法再经过过滤规则过滤它们。

因此你们必定要养成在项目开始就建立.gitignore文件的习惯,不然一旦push,处理起来会很是麻烦。


转载连接:  http://sentsin.com/web/666.html

附上eclipse的java项目的 .gitignore文件

/.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

其余版本

java git .gitignore经常使用规则

# Created by .ignore support plugin (hsz.mobi)
.gitignore

# Operating System Files 

*.DS_Store 
Thumbs.db 
*.sw? 
.#* 
*# 
*~ 
*.sublime-* 

# Build Artifacts 

.gradle/
build/
target/
bin/
dependency-reduced-pom.xml 

# Eclipse Project Files 

.classpath
.project
.settings/ 

# IntelliJ IDEA Files 

*.iml
*.ipr 
*.iws 
*.idea 
相关文章
相关标签/搜索