将远程分支尖端从一个分支移动到另一个分支

Sea*_*nch 4 git commit rebase

我做了一个rebase --onto将之前的提交(c4)从master移动到功能分支.但我已经把主人推到了遥远的原点.

所以现在我有

c1 - c2 - c3 - c5(master HEAD)
           \
            c4(feature HEAD) - c5(origin/master HEAD)
Run Code Online (Sandbox Code Playgroud)

我意识到修复这个会搞砸任何从原点/主人那里获得变化的人.但是只有一个其他开发人员,所以这不是一个问题.如何更改原点/主数据,使其不在功能分支之后.我希望它是这样的:

c1 - c2 - c3 - c5(master HEAD)(origin/master HEAD)
           \
            c4(feature HEAD)
Run Code Online (Sandbox Code Playgroud)

Tim*_*lla 8

使用从主服务器到源/主服务器的强制推送:

git push origin master:master --force
Run Code Online (Sandbox Code Playgroud)

其他开发人员之后需要reset他的主人到远程主人(最好在保存他的工作后进行硬重置):

git fetch origin
git checkout master
git reset --hard origin/master
Run Code Online (Sandbox Code Playgroud)