git多个拉取请求

时间:2017-03-14 13:42:15

标签: github branch pull-request

我是共享环境中的一个git noob,但已将它用于个人项目。

我正在尝试为项目做贡献,所以我这样做了:

  • 分叉项目。
  • 更改代码。
  • 已提交的代码更改为我的本地分支。
  • 推送更改为我的前叉
  • 做了拉请求。

这很有效。 PR还在等待,但我还有其他一些想法。 所以,我创建了一个新的本地分支。

  • 更改代码
  • 提交代码更改为本地分支
  • 推送对我的分叉副本的更改
  • 做了PR

此PR的代码更改显然与我以前的编辑有关。我不希望这样,因为他们还没有投入到主要分支机构。 同样,我想进行其他更改并专门推送它们,而不包含我之前工作中的代码。

这是如何实现的?

2 个答案:

答案 0 :(得分:0)

如果你想要分支,你将使用merge分支。

结帐你的主要分支。

git checkout MAIN_BRANCH

将其他分支拉到MAIN_BRANCH

git pull origin ADDIONAL_BRANCH

git pull origin ADDIONAL_BRANCH

///////

创建新分支

git checkout -b new_branch //create new branch

git pull origin another_branch //pull changes

如果合并没有冲突

git commit -a -m "you comment"

git push origin new_branch 

答案 1 :(得分:0)

由于您已经开始了第二次拉取请求,因此您不得不放弃最佳做法:

  1. 将你的本地<PR-2-branch>改为开始PR-1(比如说8次提交)。使用-i启动交互式会话。

    git rebase -i HEAD~8
    
  2. 在打开的编辑器窗口中,点击 i 并将PR-1(5次提交)的提交标记为dropd和{{ 1}}或pick提交PR-2(3次提交)

    p

    Esc &gt; w &gt; q 退出编辑器并继续d 113456 <message> d 223456 <message> d 333456 <message> d 443456 <message> d 553456 <message> p 663456 <message> p 773456 <message> p 883456 <message> 该分支现在仅包含当前PR范围内的提交。

  3. 使用rebase

    更新远程分支
    --force