当我打开 GitHub上的 撤回请求。 所有提交以来,我的最后一个请求和所有新的 将自动添加到此请求 。
我似乎无法控制哪些提交是添加的,哪些不是。 当我尝试打开另一个 pull 请求时,我得到一个“ Oops! There’s already a pull request”错误。
有没有什么简单的方法可以打开多个 pull 请求,而不必使用命令行?
拉请求 基于分支。 打开多次提交的 pull 请求的唯一方法是:
你实际上可以做到这一点,而不需要创建另一个分支,但它需要一点玩耍。 下面是步骤: < br/>
在我看来,pull 请求将提交 C 视为一个分支点。
我发现最简单的方法是使用 hub 命令(https://github.com/defunkt/hub)。
从您想要创建请求的主题分支(本例中的“功能”) ,您可以运行:
git pull-request
(记得先推树枝!)
它将在 GitHub 上为“ YOUR _ USER: Feature”打开一个新的 pull 请求。
如果你已经在 GitHub 上创建了一个问题,你甚至可以对现有的问题附加一个请求(这是你在 web UI 上无法做到的) :
$ git pull-request -i 123 [ attached pull request to issue #123 ]
最初创建 pull 请求时,如果为新的 pull 请求打开两个单独的表单,只要它们指向要合并的不同分支,就可以创建它们。例如,我可以提出两个单独的请求,一个请求合并为 master,另一个请求合并为 test。
我是 Git 和 GitHub 的新手,遇到了与 OP 相同的问题。
我已经找到了一个解决方案,可能在 OP 时还没有。
情境: 您有3个更改,您希望每个更改都是基于前一个更改构建的,并且每个更改都有自己的拉请求(PR)。
问题: 当您创建第一个 PR 并试图将开发拉入主 PR 时,一切看起来都很好,但是当您为第二个 PR 进行更改并合并它们(使用同一个分支)之后,所有的更改都在同一个 PR 中。
迷你解决方案: 创建一个新的分支
git branch mini_change_2 git checkout mini_change_2
现在,您将代码推送到 GitHub 并创建 PR,但是它默认为 Pull from mini _ change _ 2 to master,除了 master 还没有第一个 PR 的更改,因此它包含了来自 PR1和 PR2的所有更改。
最佳解决方案: 在 PR2中指定要合并到的分支。
在创建第二个 PR 时不要仅仅接受默认值,比如说你要拉 mini _ change _ 2进行开发,这只会显示 mini _ change _ 2中的更改
现在创建一个新的分支 mini _ change _ 3,并将其 PR 为 mini _ change _ 3。
一旦你开始合并它们,问题就来了,但那是另一回事。
您可以通过为您的工作创建单独的分支来创建拉请求(PR)。
例如:
您结帐从一个分行的主人进入一个分行的工作-1。
您在分支 work-1中进行了一些提交,分别为 work-1-commit-1和 work-1-commit-2
现在,您创建一个从工作1到主人的公关。 您的代码可以通过查看公关文件的更改来进行审查。
现在,对于进一步的工作,您将从分支工作 -1检出到新的分支工作 -2
您在分支 work-2中进行了一些提交,分别为 work-2-commit-1和 work-2-commit-2
现在创建一个从 work-2到 work-1的 PR。 您的代码可以通过查看公关文件的更改来进行审查。
在这里,文件更改将只包含您之后编写的新代码 工作1-承诺2。
今天刚发现了这个,如果你不是在叉子上工作的话:
如果您转到存储库页面,单击“拉请求”,那里有一个“ New Pull request”按钮,您可以使用它在任意两个分支之间创建拉请求。
这对于必须合并到主分支和开发分支的修补程序非常有用(在不同时间,取决于您如何部署系统)