找回丢失的 commit 要记住不要慌 事情总有解决的方法

一开始在一个分支上修改代码

  1. git add -A
  2. git commit -m "修改"
  3. git push origin dev

    发现提交不了,心急了,切换分支

  4. 发现之前的 commit 的 不见
  5. git reflog
  6. 找到 上次的 commit
    $ git reflog
    b7057a9 HEAD@{0}: reset: moving to b7057a9
    98abc5a HEAD@{1}: commit: more stuff added to foo
    b7057a9 HEAD@{2}: commit (initial): initial commit
  7. git reset --hard 98abc5a
  8. 发现commit 回来了

    切换到远程分支 把刚才的分支合并到远程分支

    在A 分支上 找出要合并的commit ID :
    例如
    0128660c08e325d410cb845616af355c0c19c6fe
    然后切换到B分支上
    git checkout B
    git cherry-pick  0128660c08e325d410cb845616af355c0c19c6fe

参考链接

找回Git中丢失的Commit
Git合并某个分支的一个commit到另一个分支

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!
未填写
文章
78
粉丝
8
喜欢
43
收藏
49
排名:82
访问:10.4 万
私信
所有博文
社区赞助商