Rebase on github branch

jvl*_*nag 14 git github git-rebase

说我做了以下步骤:

  • fork一些项目,创建一个主题分支
  • 在GitHub上推动那个分支
  • 请求从该分支拉到原始项目

但是,我得到一些评论来改进代码的内容.

  • 我修复了代码,做了提交
  • Rebase来压制旧提交

问题是,我不能再把它推到GitHub上的主题分支了.

那么处理这个问题的最佳方法是什么?

Von*_*onC 16

一旦重新定位,你不能只在forked repo上添加新的提交(因为你在rebase期间重放了这些提交,重写了他们的SHA1),你必须强制推送:

git push -f
Run Code Online (Sandbox Code Playgroud)

然后重新做你的拉动请求.

这没关系,因为还没有人克隆你的回购并开始使用你的分支.

如果已使用该分支,请关注该博客帖子:

重要提示:如果您已经将提交推送到GitHub,然后在本地压缩它们,您将无法再将相同的分支推送到GitHub.
创建一个新的分支 - 100-retweet-bug-squashed或者100-retweet-bug-rc1(对于候选版本1) - 并在那里压缩你的提交.
一旦所有东西都被压扁并准备就绪,将新压扁的分支推送到GitHub并将您的拉取请求发送给Gina.

  • 值得注意的是,在新的pull请求中将无法对原始github pull请求进行任何讨论. (2认同)