详细:git提交忽略已提交,未提交文件

  • Post author:
  • Post category:其他


目录


和同事都要忽略的文件

未提交到git远程仓库的文件

直接添加到.gitignore

1. vim .gitignore

2. 添加需要忽略的文件

3. 提交到远程仓库


.gitignore配置规则

• 所有空行或者以注释符号 # 开头的行都会被 Git 忽略。
• 可以使用标准的 glob 模式匹配。
• 匹配模式最后跟反斜杠(/)说明要忽略的是目录。
• 要忽略指定模式以外的文件或目录,可以在模式前加上惊叹号(!)取反。

**for example**

# 此为注释 – 将被 Git 忽略
*.a # 忽略所有 .a 结尾的文件
!lib.a # 但 lib.a 除外
/TODO # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
build/ # 忽略 build/ 目录下的所有文件
doc/*.txt # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt

已提交到git远程仓库的文件

如果当前文件是已经commit ,push到远程仓库后了,.gitignore里面再配置是不起作用的,此时需要清除对此文件的追踪

  1. git rm –cached xxx 或者git rm -r –cached 文件夹名称取消追踪

  2. 在.gitignored中添加需要过滤的文件

  3. commit, push提交.gitignore


配置这个后其他成员pull后working directory中对应的文件会删除,如果文件重要,要提前备份


仅在自己本地忽略

如果这个文件只是想在自己本地给忽略,比如大家数据库配置都是localhost而自己配成虚拟机ip,此时只是自己本地忽略,而不需要大家一起忽略。

拿logback.xml文件为例


git update-index --assume-unchanged xxx/xx/x/logback.xml

指定忽略文件后git status 这个文件就不会再显示了。如果以后需要提交了就取消忽略


git update-index --no-assume-unchanged xxx/xx/xlogback.xml

编辑环境为UNIX系统,在pc上可以通过GitBash在本地仓库下执行命令行

不进行忽略,但区分提交文件

在提交的时候大家总是在一大堆文件中取消某些配置或不必要提交的文件的选中状态,在敏捷开发中这样十分影响开发效率,在git提交的时候是默认将修改文件添加到Default文件夹下面的,所以我们可以创建一些文件夹进行一些筛选

for example:

  1. 打开版本控制器显示如下有四个改动文件

    这里写图片描述

    其中

    properties

    配置文件是我们不要的

    这里写图片描述

  2. 直接将配置文件拖动到新建的文件夹里面就可以了。

  3. 这里写图片描述

  4. 提交展示

    这里写图片描述



版权声明:本文为qq_34581118原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。