前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >忽略不想提交的文件- 每天三分钟玩转Git(10)大结局

忽略不想提交的文件- 每天三分钟玩转Git(10)大结局

作者头像
机智的程序员小熊
发布2019-12-12 16:20:43
1.5K0
发布2019-12-12 16:20:43
举报
文章被收录于专栏:技术面面观技术面面观

小心别把你的密码提交到git上!!——编程三分钟

第 10 篇

忽略不想提交的文件

什么时候我们想忽略一些文件呢?

第一种:我们根本就不想某些文件出现在git库里,比如日志文件等垃圾文件;

第二种:git远程仓库里这些文件,比如配置,我们必须要在本地修改配置来适应当前运行环境,难说还会涉及到数据库连接密码等敏感信息,这种情况下我们不想每次提交的时候都去跟踪这些文件,也不想把本地的记录提交上去。

忽略自动生成的垃圾文件、中间文件、敏感信息文件

忽略文件的原则是:

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

我们要怎么做呢?

在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件。

  • 创建并写入忽略规则*.log忽略全部以.log为后缀的文件
  • 创建了test.logtest2.log
  • status查看,真是工作区是clean,新创建的文件没有被跟踪

忽略远程存在,本地不想与远程同步的文件

添加跟踪忽略核心命令:

代码语言:javascript
复制
git update-index —assume-unchanged 文件名

我在远程提交了一个time.txt文件内容为10:41, 然后进行以下的一顿操作,解除了此文件的本地追踪,不管远程这个文件变成什么样子,Git都不会再去对比此文件差异,拉代码的时候也不会覆盖此文件了。

  • 使用命令git update-index —assume-unchangedtime.txt加到忽略名单里
  • 修改time.txt的内容为10:43
  • git status查看确实没有被跟踪

如果需要取消以上操作就使用以下命令即可:

代码语言:javascript
复制
git update-index —no-assume-unchanged 文件名 

这个时候就有人问了,要是加了太多的忽略跟踪,要是忘记了怎么办?其实根本就不用人脑来记忆。

  • 使用命令git update-index —assume-unchangedtime.txt加到忽略名单里
  • 使用git ls-files -v| grep '^h\ '命令可以看到小写h代表本地不跟踪的文件

完结撒花

到这里就玩转Git系列就全部更新完毕了,同时我把这个系列的文章整理成了目录,加到了菜单中的【精选教程】【玩转Git】中便于大家查阅。今天连发两篇,另一篇我把Git几乎所有可能用到的命令归类,方便备用查询。

后续我会在下面三个挑一些来写一写,完整这个Git专题

【保留原提交记录迁移Git项目】【svn迁移到Git】【常用Git可视化工具】

理论上,git日常用到的命令是 diff show fetch rebase pull push checkout commit status 等,这些命令都不会导致代码丢失,假如害怕代码丢失,可以预先commit一次,再进行修改,但切记

不可使用自己不熟悉的命令 任何命令,不要加上-f的强制参数,否则可能导致代码丢失 建议多使用命令行,不要使用图形界面操作

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-05-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 机智的程序员小熊 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 添加跟踪忽略核心命令:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档