git 忽略文件的几种方式以及应用场景

  1. .gitignore文件配置
    最常用的忽略设置, 可以设置整个项目要忽略的文件夹, 对于已经在track的文件, 需要先移除track, 具体操作网上很多. 这种方式常用语忽略第三方库, 临时文件和配置文件, 关于配置文件设置, 在网上找到一个不错的办法

引自:https://segmentfault.com/q/1010000000430426
对于充当模版的文件,在文件名上加以区分然后用 Git 记住。比如说实际的配置文件应该叫 database.conf,在写好模版之后可以更名为 database.conf.example。Git 记录 database.conf.example 但是忽略 database.conf。
每一个人克隆下来之后,复制一份 database.conf.example 为 database.conf 然后修改后者以符合本地的要求。由于后者是在 .gitignore 里的,所以不会被记录,也完全不需要 update-index。

  1. exclude文件配置
    这个文件在 .git/info/exclude 和 .gitignore文件的配置方式相同, 不同点在于exclude中的配置不会影响其他人, 这个东西做了下实验, 发现没有效果, 可能是我姿势不对, 目前也没想到应用场景
  2. git update-index --assume-unchanged PATH
    在PATH处输入要忽略改动的文件, 例如: git update-index --assume-unchanged logs/*.log 将会忽略logs文件夹下的所有log后缀的文件改动, 注意, 这个忽略并非是不记录, 而是让git假装目标文件没有改变, 关于这个文件的正确用法:

引自:https://segmentfault.com/q/1010000000430426
应用了该标识之后,Git 停止查看工作区文件可能发生的改变,所以你必须 手动 重置该标识以便 Git 知道你想要恢复对文件改变的追踪。当你工作在一个大型项目中,这在文件系统的 lstat 系统调用非常迟钝的时候会很有用。

  1. 你正在修改一个巨大的文件,你先对其 git update-index --assume-unchanged,这样 Git 暂时不会理睬你对文件做的修改;
  2. 当你的工作告一段落决定可以提交的时候,重置改标识:git update-index --no-assume-unchanged,于是 Git 只需要做一次更新,这是完全可以接受的了;
  3. 提交+推送。
  1. git update-index --skip-worktree PATH

https://www.zhihu.com/question/25234996
--assume-unchanged 假定开发人员不会更改文件。此标记旨在为无变化文件夹(如 SDK)改善性能。
--skip-worktree 用于命 GIT 不再染指特定文件——即便开发人员可能更改它——的情形。例如,如果主源码库上游承载某些即将投入生产的配置文件而你不希望意外的提交影响到那些文件,--skip-worktree 正是你的菜。

相关资料
git忽略已经被提交的文件 评论有很多干货
git 中的 assume-unchanged 与 skip-worktree 的区别是什么?
https://segmentfault.com/q/1010000004164349?_ea=513032

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • git常用命令 GIT常用命令备忘:http://stormzhang.com/git/2014/01/27/gi...
    新篇章阅读 8,660评论 1 26
  • 输入 y ,创建 git_hug 目录No githug directory found, do you wish...
    风花花阅读 2,005评论 0 4
  • https://segmentfault.com/q/1010000000430426 tl;dr: 正确的做法应...
    RainingMan阅读 379评论 0 0
  • 新学期,第一天,面对一张张稚嫩的脸庞,一句老师好。可以让自己起了个大早心里有一丝丝温暖。第一节课和搭档老师一...
    summer媛媛呀阅读 594评论 0 0
  • 时光的洪流滚滚奔腾 席卷了一年的酸甜苦辣 犹如一首首红尘恋歌 唱尽了人间的悲欢离合 一年三百六十五天 犹如三百六十...
    佰贰拾贰阅读 439评论 0 0