在GitHub中合并拉取请求,可能首先对它们进行更改

Jef*_*eff 25 github pull-request

我最近开始在GitHub上管理一个项目,人们一直在提交拉取请求.而不是将它们合并到主人,我希望能够:

  1. 首先审查他们,以确保他们真正工作

  2. 在合并到掌握之前可能会做出一些风格上的变化

我怎样才能做到这一点?

您是否必须创建一个单独的分支,例如"dev",并指示人们在合并到master之前对其进行编码?

Jor*_*eña 21

这里有一个github帮助页面,详细说明了如何通过在本地检出pull请求来更改pull请求.

我可能会尝试首先为拉请求提交者创建一个遥控器(我正在使用上面的例子):

git remote add kneath git://github.com/kneath/jobs.git
Run Code Online (Sandbox Code Playgroud)

获取更改:

git fetch kneath
Run Code Online (Sandbox Code Playgroud)

检查有问题的分支(例如主人):

git checkout kneath/master
Run Code Online (Sandbox Code Playgroud)

但是你喜欢它们,因为那里的代码将是拉取请求代码.运行测试等

如果你好的话,将它们合并:

git checkout master
git merge kneath/master
Run Code Online (Sandbox Code Playgroud)

此外,这是一个关于git 项目管理工作流程的非常好的页面,其中详细介绍了可以对协作集成进行的各种工作流程.

  • 你实际上甚至不需要那么多命令.单击合并栏左侧的(i),它将为您提供所需的所有命令. (2认同)

Ale*_*lex 21

使用GitHub更快的方法是使用Zach Holman在他的GitHub Secrets II Talk(视频)中提供的这个GitHub功能.

git fetch origin pull/id/head:name
Run Code Online (Sandbox Code Playgroud)

idpull请求id 在哪里,head是远程分支(在fork上),name是您要为本地分支提供的名称.例如:

git fetch origin pull/12/head:pr
Run Code Online (Sandbox Code Playgroud)

将请求#12提取到名为pr的分支中.

如果您经常使用它,可以在git中将其添加为别名.

  • 好戏.`head`字符串实际上是`head`,而不是分支名称(fi`master`). (5认同)