在重新定位本地分支后将更改推送到远程主服务器

时间:2016-12-20 08:08:18

标签: git

好的,我显然在这里有一点问题,了解我必须做些什么才能做到这一点。

我已经向远程主人推了很多提交,我现在想要压制。为此,我启动了git rebase -i HEAD~20会话,并使用squash压缩一些提交合并为一个。

在我能够解决的一些冲突之后,我留下了一个"缩短了"我的本地分支的版本 - 但此时我不知道如何将它放到远程分支上。

如果我运行git status,它会告诉我本地和主分支在1和11次提交中有所不同。

如果我此时运行git pull,整个rebase行动都会撤消,我会回到我开始的地方。

基本上我从以下的方式出发:

a                   b
o-->o-->o-->o-->o-->o
     \         /
      o-->o-->o

a   b
o-->o

但只有本地。如果我推送本地,我可以压缩遥控器上的提交吗?

2 个答案:

答案 0 :(得分:2)

您使用的条款存在一些混淆。 有这样的事情是推送本地的'。 push操作是从您的本地到远程。

因此,如果您推送了更改,则会在远程存储库中共享它们。

分享这些更改后,建议不要压缩它们。由于任何已经pulled您的更改的人都会遇到问题。

虽然有可能。 你需要强制推动你的改变。

git push -f

答案 1 :(得分:1)

是。只需按git push -f进行强制推送。