美文网首页
git reset --hard后恢复版本

git reset --hard后恢复版本

作者: 理想休想幻想 | 来源:发表于2019-02-28 21:00 被阅读0次

    分支情况:在a分支 commit 两次 message为”本分支相关功能“(以下称为commit1),”全局组件“(commit2)

    情景:在a分支上开发了另一个跟当前分支无关的新功能
    目的:想要把这个无关的新功能从当前a分支剥离出来 另一新功能分支b上
    解决方法: 先从当前commit2回退到commit1,把commit1提交远程库,再在当前分支a回退到commit2 上,新建一个分支b,同步a当前commit2的代码,再push到远程分支

    步骤如下:

    1 、git log  //查看commit id
    2、git reset --hard commit_id //回到commit1版本
    3、git push origin a
    4、git reflog // 查看操作历史记录id,找到commit2对应的id(必须在a分支上回退,因为是a分支上开发的,才可以看到commit2的记录;如果当前在commit1,就新建分支b,则b的代码只同步到a的commit1,git log时看不到commit2的历史记录,并不能回退到commit2)
    5、git reset id // 回退到commit2
    5、git checkout -b b // 新建分支b
    当前分支:b:
    6:git pull origin a // 拉取a分支的代码,防止冲突
    7、git push origin b // push commit2 新功能到远程分支
    

    相关文章

      网友评论

          本文标题:git reset --hard后恢复版本

          本文链接:https://www.haomeiwen.com/subject/qpfluqtx.html