记录一次使用git悲催的经历

git是一个神器,但是前提是要会用它,今天的惨痛经历告诉了我这一点

我是使用 Webstorm 来写代码的,在每次新建一个文件的时候它都会问我要不要把这个文件添加至 git ,还可以默认设置,我当然选择默认了呀,那时我的理解是: 在后面我每次保存文件的时候 Webstorm 都会自动帮我 ‘git add’ ,然而我错了……

当任务完成告一段落之后我没有 git add ,也没有git status ,就直接自信地 commit 了。

又写了一阵,出现了一些奇怪的错误,我想说还是退回上次 commit 吧,直接 git reset --hard HEAD ,结果是:

我新建的文件都还在,但是内容全空了

那可是我今天半个上午加昨天一天敲的代码呀…….


然后我想是不是我 reset 的姿势不对,接着就是一阵猛烈的 git reflog + git reset --hard ... 的循环,但是依然无果

这货 git reset --hard HEAD 的作用之一是:将工作目录中所有未提交的内容清空

也就是说自从文件创建以后我写的所有内容都没有 add 过……..


经过一些分析加实验,得出以下结论

  • Webstorm 只有在创建文件的时候才会帮你把新创建的文件加入 Stage
  • git commit 时只会显示没有加入Stage 的文件,并不会提示你那些文件作了修改但是没有add
  • 使用 git status 很重要,因为它可以告诉你哪些文件修改了哪些没有,所以在 commit 之前一定要查看一下 status

谨以此文纪念我逝去的代码 T_T

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值