您的位置:首页 > 其它

使用 .gitignore来忽略某些文件【转】

2016-02-18 11:39 471 查看
转自:/article/4818326.html http://blog.csdn.net/richardysteven/article/details/6069418[/code] 

一般某个项目dev过程中都会产生一些中间文件,这些文件是我们不想要追踪的。
git中可以使用.gitignore文件来忽略这些文件。

在需要的目录下面 添加 .gitignore文件 :

文件中每一行表示需要忽略的文件的正则表达式。

vim .gitignore

$cat .gitignore
#ignore .metadata
.metadata
.gitignore
#ignore obj and lib file
*.[oa]

当前的目录情况

$ls -al
total 24
drwxr-xr-x  4 root root 4096 2010-12-11 12:44 .
drwx------ 51 root root 4096 2010-12-11 12:44 ..
drwxr-xr-x  8 root root 4096 2010-12-11 12:44 .git
-rw-r--r--  1 root root   39 2010-12-11 12:44 .gitignore
drwxr-xr-x  3 root root 4096 2010-08-19 20:01 .metadata
-rw-r--r--  1 root root   52 2010-12-11 12:41 test.txt

如果没有添加该文件,git status会报有这些文件没有track。

$git status
# On branch master
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#    .metadata/
#    gitignore

而 添加了该文件后,就可以看到,这个workspace 就是干净的了。

$mv gitignore .gitignore 
[root@~/workspace]

$git status
# On branch master
nothing to commit (working directory clean)

这个.gitignore很简单,当前目录下有个.metadata,这个是我们不需要的,所以就写入了文件。
另外如果不加.gitignore这行,git会把.gitignore也加入版本控制中。

简介

忽略文件默认为当前目录的[code].gitignore
。[/code]
也可以通过修改全局配置git-config的[code]excludesfile
指定全局忽略文件。[/code]
$: git config --global core.excludesfile ~/.gitignore

养成一开始就设置好[code].gitignore
的好习惯,[/code]
.gitignore的语法

#
为注释行,空行不匹配任何文件,这两个特征可以使
.gitignore
文件可读性强一些。[/code]
通过[code]!
取反。[/code]
斜杆[code]/
结尾的字符,被当做文件夹处理,文件夹下的所有文件将被忽略。[/code]
除去以上三种情况,其他时候使用标准的glob模式匹配。


有的时候.gitignore似乎是没有效果,但实际上的问题是,ignore不处理已经add的文件。

所以不论怎么修改路径,都是无法将显示的文件移除。

http://stackoverflow.com/questions/2545602/git-ignore-sub-folders

Permalink http://www.shrekwang.com/bbs/a/436005
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: