git 误删文件? 谁惹的货 (文件大小写修改)

1.背景

 

    今天有兄弟说我 在git上 误删了 他的js文件 

    

     我当时即刻就感到难以置信,作为10年开发经验的一枚程序员,怎么可能做这种事情!!!!

 

     但是 兄弟拿出证据了 

 



 

 2.排查

 

作为社会主义四有新人,不会做这样的事情的,通常我不会删别人的文件(如果code review 要删的话,肯定也会告知对方的), 何况这个文件还是 后台管理系统中不知道哪个功能的一个js

 

 

 

我就不信邪

 

我得查查 ,揪揪看, 到底是为什么 ,我就基于整个项目 来 show  history

 

 

嘿 还真发现, 在我的代码版本之前的几个小时 有删除记录 



 

  

 

哦, 然后问了下兄弟,  原来是 他之前 重命名了 文件名 ,  从update-item-baseInfo.js 改成  update-item-baseinfo.js    也就是从 大写的 Info 改成了 小写的 info

 

 

3. 原因

 

好嘛, 我们的开发环境 目前都是 windows操作系统,  不区分大小写, 

在 git  pull代码的时候, 原来的文件会被删除, 但是新文件的名称 对于 windows而言 和 原来的名字是一样的, 那么就不会创建新文件

 

而我当天由于批量修改了 author值, 这条删除记录从茫茫的提交记录中忽视了 自然而然的就提交了

 

4.总结

 

这个事件也点明了:

 

  1. 如果是windows开发环境  重命名的时候, 不要简单的大小写修改
  2. 提交文件的时候,还是需要留个心眼儿, 冷不丁的可能会提交不是你想要提交的东西

 

 参考 :

 

http://stackoverflow.com/questions/17683458/how-do-i-commit-case-sensitive-only-filename-changes-in-git

 

http://stackoverflow.com/questions/8481488/is-git-not-case-sensitive

 

http://stackoverflow.com/questions/10523849/changing-capitalization-of-filenames-in-git

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值