记一次Git未Commit直接Pull导致本地代码丢失后的挽救过程

第一次遇到这种问题,有点紧张...

好吧,废话不多说,IDEA或者AndroidStudio进入Git Uncommiteed Changes -> Unstash Changes:

在弹出的Unstash Changes对话框点View查看代码,如果代码是本地丢失的代码,那么恭喜你,又可以继续愉快的玩耍了。不过千万要注意不用随便点到Drop,Clear按钮。

这个时候我们有三个方式来恢复我们的代码:git stash apply ,git stash pop和git stash branch。

这三者的区别参考:git stash 命令实用指南 | Linux 中国

笔者选的是git stash branch,因为创建分支可以避免merge冲突,等代码恢复以后再考虑合并分支。

在对话框中填入分支名称,按钮会从Apply变成Branch。当然我们也可以使用命令行来执行。

 填入新的分支名称后点Branch按钮即可。

等待完成,就会自动切换到我们新建的branch。

再检查下代码,已经成功恢复了,Bingo! 晚安,好梦。

小结,git pull导致本地代码丢失问题,可以先看git stash是否有暂存,如果有就可以很幸运的恢复了。如果没有,那就看看回收站和Local History,如果还是没有,那大概率凉了,节哀顺变吧。血泪的教训告诉我们,一个良好的使用git的习惯是多么重要啊,以后记得先commit啊喂。

最后,再推荐一篇文章温习下git stash:git stash、git branch使用方法

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
当我们使用git pull命令时,它会从远程仓库获取最新的代码,并将其应用到本地代码上。然而,如果在git pull操作之前没有进行任何提交或保存本地修改的话,可能会导致本地代码不见的情况发生。 Git pull操作的本质是将远程仓库的代码合并到当前分支的工作目录中。如果本地代码与远程代码有冲突,Git会尝试自动合并,但是在合并过程中可能会出现冲突。 一种可能的情况是,在git pull操作时,Git会检测到与远程仓库代码的冲突,并提示手动解决冲突。如果我们不小心覆盖了本地代码解决冲突,那么本地代码很可能会被替换为远程仓库的代码,从而导致本地代码不见。 另一种可能的情况是,在git pull操作之前,我们可能已经意外地删除或移动了本地代码文件。如果我们没有进行备份,那么在git pull操作后本地代码就会消失。 为了避免这种情况发生,我们应该在进行git pull操作之前,先保存或提交我们的本地代码。使用git stash命令可以将当前的工作目录的修改保存起来,而不提交到版本控制系统中。这样,即使在git pull操作后本地代码消失了,我们也可以使用git stash pop命令将之前保存的修改应用回来。 总之,当我们进行git pull操作时,一定要注意备份和提交本地代码,以免意外丢失。如果不小心丢失代码,可以尝试使用git stash恢复之前的修改。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

农贤钢

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值