实验: git 如果.gitignore中添加一个已经跟踪的文件结果是?



背景,一个kernel,里面有大量硬件厂商的库,拿过来后直接

$git init

$find . -name .gitignore -type f -exec rm -rf {} \;    #前面说过,有大量库,默认的规则是会过滤掉,这样的代码你push上去谁也编不过去

$git add .

$git commit -a -m "init commit"

没问题,拿到的是干净的内核,没有什么该忽略的,至少还不清楚,都包进去是应该的。

然后问题来了,$make -j4 编译完成

$git status

...

然后就是超长的Untracked files列表了,各种.o啊之类的中间文件

简单的法子就是把这个表直接复制到你的.gitignore文件中

但是面对这个超长的.gitignore也是实在不专业

然后想要按目录去编写.gitignoe,但是担心会把已经跟踪的问题给过滤掉,所以做这个实验


两个文件 1.txt 2.txt add后commit

然后编写.gitignore 把2.txt过滤

实验1:在工作目录中对2.txt操作,会被git捕获,与正常跟踪的文件相同


验证被加在过滤列表的已跟踪文件会被正常push

实验2:过滤2.txt,然后git push,然后换个地方git clone一个新的工作目录,ls下2.txt正常出现

(还是钻研不深,感觉还是理论的不严谨,这个地方如果准确的知道.gitignore的工作方式和作用范围就不用这么费劲了,但是计算机么,还是事实为准)

感觉.gitignore的作用仅限于git status这种去按工作目录干活的命令,其他的git命令应该是基于.git文件夹中的记录,所以才会有这种效果。


结论:需要的文件都跟踪后就可以大范围的粗旷的使用.gitignore了 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值