繁体   English   中英

Git rebase:强制推或拉推

[英]Git rebase: force push or pull push

我们正在公司中讨论git rebase之后的git rebase 重新设定rebase之后,您需要将更改推送到远程origin但是当git不允许时我们应该怎么做? 实际上,我们正在讨论在已推动该分支时最常用的两种方法:

1 git push -uf origin branch

原因:只有在该分支的提交origin 那棵树将是flat

|
|
|

2

git push -u origin branch
! [rejected]
  hint: Updates where rejected because the tip of your current branch is behind
  hint: Updates were rejected because the tip of your current branch is behind
  hint: "git pull ...") before pushing again.
git pull origin branch
git push -u origin branch

原因:它会创建一个名为“将起源/分支合并到分支blablabla”的提交,这看起来像是不必要的。 它不会flap树。

|\
| |
|/

**强制标志看起来很奇怪

如果您重新建立分支的基础, 则将重写该分支的历史记录

如果该分支已经被推送,则您需要“强制推送”它,因为它的新提示无法通过它的上一个提示到达(这就是为什么您收到该错误消息的原因)。

git push --force origin branch

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM