git忽略特殊文件

有些时候,你必须把某些文件放到Git工做目录中,但又不能提交它们,好比保存了数据库密码的配置文件啦,等等,每次git status都会显示“Untracked files ...”,有强迫症的童鞋内心确定不爽。html

        好在Git考虑到了你们的感觉,这个问题解决起来也很简单,在Git工做区的根目录下建立一个特殊的.gitignore文件,而后把要忽略的文件名填进去,Git就会自动忽略这些文件。git

        不须要从头写.gitignore文件,GitHub已经为咱们准备了各类配置文件,只须要组合一下就可使用了。全部配置文件能够直接在线浏览:https://github.com/github/gitignoregithub

        忽略文件的原则是:数据库

  1. 忽略操做系统自动生成的文件,好比缩略图等;
  2. 忽略编译生成的中间文件、可执行文件等,也就是若是一个文件是经过另外一个文件自动生成的,那自动生成的文件就不必放进版本库,好比Java编译产生的.class文件;
  3. 忽略你本身的带有敏感信息的配置文件,好比存放口令的配置文件。

举个例子:编辑器

        假设你在Windows下进行Python开发,Windows会自动在有图片的目录下生成隐藏的缩略图文件,若是有自定义目录,目录下就会有Desktop.ini文件,所以你须要忽略Windows自动生成的垃圾文件:ui

[html] view plain copy 在CODE上查看代码片 派生到个人代码片
  1. # Windows:  
  2. Thumbs.db  
  3. ehthumbs.db  
  4. Desktop.ini  

        而后,继续忽略Python编译产生的.pyc.pyodist等文件或目录:
spa

 

[html] view plain copy 在CODE上查看代码片 派生到个人代码片
  1. # Python:  
  2. *.py[cod]  
  3. *.so  
  4. *.egg  
  5. *.egg-info  
  6. dist  
  7. build  

        加上你本身定义的文件,最终获得一个完整的.gitignore文件,内容以下:
操作系统

 

[html] view plain copy 在CODE上查看代码片 派生到个人代码片
  1. # Windows:  
  2. Thumbs.db  
  3. ehthumbs.db  
  4. Desktop.ini  
  5.   
  6. # Python:  
  7. *.py[cod]  
  8. *.so  
  9. *.egg  
  10. *.egg-info  
  11. dist  
  12. build  
  13.   
  14. # My configurations:  
  15. db.ini  
  16. deploy_key_rsa  

        最后一步就是把.gitignore也提交到Git,就完成了!固然检验.gitignore的标准是git status命令是否是说“working directory clean”。.net

        使用Windows的童鞋注意了,若是你在资源管理器里新建一个.gitignore文件,它会很是弱智地提示你必须输入文件名,可是在文本编辑器里“保存”或者“另存为”就能够把文件保存为.gitignore了。code

小结

    1. 忽略某些文件时,须要编写.gitignore
    2. .gitignore文件自己要放到版本库里,而且能够对.gitignore作版本管理!
    3. 若是文件已经和库关联,如一些包含在库里面的生成文件.pyc,.a,.lib,没法经过ignore,除非将其删除提交,不然git status老是会显示删除文件。
相关文章
相关标签/搜索