【发布时间】:2014-01-12 13:16:09
【问题描述】:
我正在为 GitHub 上的一个项目做出贡献。
我做了以下事情:
- 分叉回购
- 克隆分叉的存储库
- 在我的本地仓库中创建了一个本地分支
- 修复了本地分支中的一个错误
- 将更改推送到我的分叉仓库
- 从该新分支发出拉取请求
几天后,我得到了一些 cmets,我必须进行更多更改。
但从那时起,他们的代码发生了很大变化。如果我必须再次提出拉取请求,我必须使用他们更新的代码更新我的新分支并合并我的更改。
我该怎么做?
编辑:
在此之前,我的 git log 看起来像这样:
commit 一个“功能完成”(最新的,我想要推送的)
提交 B“功能仍然表现得很奇怪”
我完全按照 VonC 的建议做了(除了我在 fetched 时在我的功能分支中)。
我的rebase 有冲突。
当我尝试解决它们时,我惊讶地发现它是在上游主服务器上重新提交 B 而不是 A。我已经检查了很多次:git log 显示的正是我所展示的内容。
为什么它会将我的 previous 提交基于上游 master?
编辑:
我通过将我的 2 个提交 A 和 B 压缩为一个来解决上述问题。
不知道为什么会这样……
【问题讨论】:
-
您可能已经为您的更改创建了一个功能分支?
-
所以在这种情况下,您可以将远程分支合并到您的功能分支中,以便您拥有所有更改,然后将更改推送到功能分支,然后您可以创建拉取请求。跨度>
-
您使用的是哪个 GIT 客户端
-
@eatSleepCode,我在终端使用它。
-
查看git tutorial了解如何合并分支
标签: git github git-pull pull-request