版本控制git之四-忽略特殊文件

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

好在Git考虑到了大家的感受,这个问题解决起来也很简单,在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件。

不需要从头写.gitignore文件,GitHub已经为我们准备了各种配置文件,只需要组合一下就可以使用了。所有配置文件可以直接在线浏览:<https://github.com/github/gitignore&gt;

忽略文件的原则是:

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

举个例子:

假设你在Windows下进行Python开发,Windows会自动在有图片的目录下生成隐藏的缩略图文件,如果有自定义目录,目录下就会有Desktop.ini文件,因此你需要忽略Windows自动生成的垃圾文件:

# Windows:
Thumbs.db
ehthumbs.db
Desktop.ini

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

# Python:
*.py[cod]
*.so
*.egg
*.egg-info
dist
build

加上你自己定义的文件,最终得到一个完整的.gitignore文件,内容如下:

# Windows:
Thumbs.db
ehthumbs.db
Desktop.ini

# Python:
*.py[cod]
*.so
*.egg
*.egg-info
dist
build

# My configurations:
db.ini
deploy_key_rsa

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

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

有些时候,你想添加一个文件到Git,但发现添加不了,原因是这个文件被.gitignore忽略了:

$ git add App.class
The following paths are ignored by one of your .gitignore files:
App.class
Use -f if you really want to add them.

如果你确实想添加该文件,可以用-f强制添加到Git:

$ git add -f App.class

或者你发现,可能是.gitignore写得有问题,需要找出来到底哪个规则写错了,可以用git check-ignore命令检查:

$ git check-ignore -v App.class
.gitignore:3:*.class    App.class

Git会告诉我们,.gitignore的第3行规则忽略了该文件,于是我们就可以知道应该修订哪个规则。

  • 忽略某些文件时,需要编写.gitignore
  • .gitignore文件本身要放到版本库里,并且可以对.gitignore做版本管理!

原文地址:http://blog.51cto.com/wangfeng7399/2352669

时间: 2024-08-27 11:21:50

版本控制git之四-忽略特殊文件的相关文章

git操作忽略.iml文件

git操作忽略.iml文件** 参考:https://blog.csdn.net/m0_38001814/article/details/87354584 因为.iml文件的修改导致代码pull失败 git stash: 隐藏本地修改 git pull: 拉取代码 git stash pop:将本地修改移出到工作区 参考:http://www.sohu.com/a/341114912_120133651 原文地址:https://www.cnblogs.com/Auge/p/11833856.h

sourcetree .git 强制忽略指定文件不提交

在公司写项目,大部分都会用到 svn 或 git 提交代码到服务器.我们公司用的GIT,每个程序员有自己的独立分支,各写各的代码互不冲突,最终合并到主分支再解决相同代码冲突问题.这时候会遇到一些配置文件提交的问题,每个程序员在自己的电脑都有自己的环境,每个环境配置各不相同,这样导致提交代码的时候都把自己的配置文件一起提交上去,这样每次提交都需要单独合并解决配置问题的冲突,对于更新平凡的项目来说很麻烦每次拉取的时候都会把别人的配置拉到本地,然后再手动去修改为自己的配置.sourcetree 针对服

git提交忽略某些文件或文件夹

记得第一次用 github 提交代码,node_modules 目录死活传不上去,哈哈哈,后来才知道在 .gitignore 文件里设置了忽略 node_modules 目录上传.是的, .gitignore 文件就是设置那些你不想用 git 一起上传的文件和文件夹.比如刚接触到 vscode 的配置文件 .prettierrc.json 最好忽略上传到 gitlub 服务器. 步骤如下: 1.创建.gitignore文件 有的项目里有这个文件 ,直接找到打开就行. 在git管理的项目文件夹中(

git sourcetree忽略某些文件提交

打开sourcetree 点击edit按钮,在文件中加入如下内容.*.iws*.iml*.iprtarget/.settings.project.classpath.externalToolBuilders*.class*svn/.idea/*.jar~*

Git 忽略一些文件不加入版本控制

在git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改 .gitignore 文件的方法.这个文件每一行保存了一个匹配的规则例如: # 此为注释 – 将被 Git 忽略 *.a       # 忽略所有 .a 结尾的文件            !lib.a    # 但 lib.a 除外            /TODO     # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO            build/    # 忽略 build/ 目录下的

Git时间,版本控制工具中 忽略文件

版权声明:本文为博主原创文章,未经博主允许不得转载. 1.    环境 Windows XP SP3 + TortoiseGit + msysGit   2.  ignore files的三种方法   以下涉及的ignore文件均为如下格式: # 以'#'开始的行,被视为注释.                                                                                                               

4,版本控制git --忽略特殊文件

有些时候,你必须把某些文件放到Git工作目录中,但又不能提交它们,比如保存了数据库密码的配置文件啦,等等,每次git status都会显示Untracked files ...,有强迫症的童鞋心里肯定不爽. 好在Git考虑到了大家的感受,这个问题解决起来也很简单,在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件. 不需要从头写.gitignore文件,GitHub已经为我们准备了各种配置文件,只需要组合一下就可以使用了.所有配

git 如何忽略已经加入到版本控制的文件

增加 .gitignore 文件,里面添加需要忽略的文件(file_not_wanted): 执行命令 git rm -r --cached .   注意,最后的点.不要省略. 最后重新将所有文件添加到追踪项. git add -A 然后再 commit 即可. 最后重新将所有文件添加到追踪项. git add -A 然后再 commit 即可. 原文地址:https://www.cnblogs.com/yanglang/p/11802470.html

如何使git忽略某些文件或文件夹

为什么要忽略某些文件或文件夹的变化? git作为一款项目文件变更版本管理软件,其主要功能之一就是追踪项目文件夹内各种文件及文件夹的变更情况.但是,在日常使用中,并非项目文件夹下的所有文件及文件夹变更都需要纳入版本控制.例如我们使用自己的开发环境对项目进行开发时产生的项目配置文件.工作区配置文件.因为每个项目参与者的开发环境不尽相同,产生的项目配置文件及工作区配置也会有很大不同.如果将这些文件一并上传到服务器端,不仅无益于git对源代码的版本管理,反而会给其他项目参与者带来困扰.除此之外,还有我们