【问题标题】:Merge in GitHub pull requests, possibly making changes to them first合并 GitHub 拉取请求,可能先对其进行更改
【发布时间】:2011-09-22 10:16:52
【问题描述】:

我最近开始在 GitHub 上管理一个项目,人们一直在该项目中提交拉取请求。我希望能够:

  1. 首先审查它们以确保它们确实有效

  2. 在合并到母版之前可能会进行一些风格更改

我该怎么做?

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

【问题讨论】:

    标签: github pull-request


    【解决方案1】:

    这里有一个github help 页面,详细说明了如何通过在本地签出拉取请求来更改拉取请求。

    我可能会尝试首先为拉取请求提交者创建一个远程(我正在使用上面页面中的示例):

    git remote add kneath git://github.com/kneath/jobs.git
    

    获取更改:

    git fetch kneath
    

    查看有问题的分支(例如 master):

    git checkout kneath/master
    

    随心所欲地审查他们,因为那里的代码将是拉取请求代码。运行测试等。

    如果您愿意,可以合并它们:

    git checkout master
    git merge kneath/master
    

    此外,这是 git project management workflows 上的一个非常好的页面,其中详细介绍了协作集成可以采用的各种工作流程。

    【讨论】:

    • 实际上你甚至不需要那么多命令。单击合并栏左侧的 (i),它将为您提供所需的所有命令。
    • 哦,好吧,就像我说的那样,我刚刚从我链接到的 github 帮助页面中获取了它们。不过,我相信你的知识,因为我相信你知道的更多。
    【解决方案2】:

    使用 GitHub 做事的更快方法是使用 Zach Holman 在他的 GitHub Secrets II Talk (video) 中提出的这个 GitHub 功能。

    git fetch origin pull/id/head:name
    

    id 是拉取请求 ID,head 是远程分支(在 fork 上),name 是您要为本地分支指定的名称。例如:

    git fetch origin pull/12/head:pr
    

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

    如果你经常使用它,你可以在 git 中添加它作为别名。

    【讨论】:

    • 不错的把戏。 head 字符串实际上是 head,而不是分支名称 (f.i. master)。
    • 我已经成功在本地克隆了PR,进行了更改,现在想合并。如何合并?
    猜你喜欢
    • 1970-01-01
    • 2013-06-09
    • 2022-08-14
    • 2019-12-08
    • 2016-12-11
    • 2023-02-23
    • 2013-01-18
    • 1970-01-01
    • 2018-07-22
    相关资源
    最近更新 更多