github中不加入版本控制.gitignore设定

来自:小车的博客

github中不加入版本控制.gitignore设定

这几天研究github page,由于用jekyll本地测试时会生成_site文件夹,所以需要把这个文件夹排除在外再提交到github,到底怎么设置呢?

这就需要用到.gitignore,即不加入版本控制,在git根目录下建立.gitignore,具体设定如下:

tmp.txt         //忽略tmp.txt *.log           //忽略所有log文件 tmp/*           //忽略tmp文件夹所有文件 log/**/*.log    //忽略log目录下的包括子目录下的所有log文件 

其他的一些过滤条件

  • ?:代表任意的一个字符
  • *:代表任意数目的字符
  • {!ab}:必须不是此类型
  • {ab,bb,cx}:代表ab,bb,cx中任一类型即可
  • [abc]:代表a,b,c中任一字符即可
  • [ ^abc]:代表必须不是a,b,c中任一字符

由于git不会加入空目录,所以下面做法会导致tmp不会存在

tmp/*             //忽略tmp文件夹所有文件 

改下方法,在tmp下也加一个.gitignore,内容为

* !.gitignore 

还有一种情况,就是已经commit了,再加入gitignore是无效的,所以需要删除下缓存

git rm --cached ignore_file 

这样就OK了。

posted @ 2013-01-03 18:40  sumsung753  阅读(157)  评论(0编辑  收藏  举报