Git使用gitignore建立项目过滤规则

在进行协作开发代码管理的过程中,常常会遇到某些临时文件、配置文件、或者生成文件等,这些文件由于不同的开发端会不一样,如果使用git add . 将所有文件纳入git库中,那么会出现频繁的改动和push,这样会引起开发上的不便。

Git可以很方便的帮助我们解决这个问题,那就是建立项目文件过滤规则。

git中提供两种过滤机制,一种是全局过滤机制,即对所有的git都适用;另一种是针对某个项目使用的过滤规则。个人倾向于第二种。


以我的一个项目为例,该项目用.net开发,.config文件、包括生成的bin/Debug, bin/Release文件等,我希望不加入git管理。

在代码目录下建立.gitignore文件:vim .gitignore ,内容如下:

[plain] view plaincopy
  1. #过滤数据库文件、sln解决方案文件、配置文件  
  2. *.mdb  
  3. *.ldb  
  4. *.sln  
  5. *.config  
  6.   
  7.   
  8. #过滤文件夹Debug,Release,obj  
  9. Debug/  
  10. Release/  
  11. obj/  
1:# 此为注释  ,将被git忽略
2:*.a  忽略所有.a结尾的文件
3:!lib.a   但lib.a除外
4:/TODO   仅仅忽略项目根目录下的TODO文件,不包括subdir/TODO
5:build/    忽略build/目录下的所有文件
6:doc/*.txt  忽略doc/notes.txt,但不包括doc/server/arch.txt

然后调用git add. ,执行 git commit即可。

问题:.gitignore只适用于尚未添加到git库的文件。如果已经添加了,则需用git rm移除后再重新commit。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章