找回丢失的 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 协议》,转载必须注明作者和本文链接
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
未填写
文章
78
粉丝
8
喜欢
43
收藏
49
排名:82
访问:10.4 万
私信
所有博文
社区赞助商