远端分支被rebase如何使用git同步本地和远端分支
Max Zhang Lv4

远端分支被 rebase 如何使用 git 同步本地和远端分支

场景

当多个人在同一个远端分支上工作时,可能会出现他人使用 rebase 命令修改了远端分支,而你本地的分支和远端分支不同步的情况。

解决方案

  1. stash 本地修改

    保留你全部的本地修改,使用 git stash 命令。

    1
    git stash
  2. 使用 fetch 拉取远端分支

    1
    git fetch origin
  3. 找到分叉点的 commit 的 hash 值

    1
    git log --oneline --graph --decorate
  4. 使用 reset 命令重置本地分支

    使用 git reset 命令重置本地分支到远端分支的 commit。这样本地分支就会指向分叉点的 commit。

    1
    git reset --hard <commit-hash>
  5. 拉取远端分支

    因为本地分支已经指向了分叉点的 commit,也就是已经在远端分支的历史上了,所以可以直接拉取远端分支。

    1
    git pull
  6. 应用 stash

    1
    git stash apply

这样处理后,本地分支和远端分支就同步了。

 评论
评论插件加载失败
正在加载评论插件