我想使用github项目(mgsplitviewcontroller)。不幸的是,所有者似乎没有接受更改。有几个我想要合并的拉请求,但是对github来说是新手,我无法理解。
我期待的是什么:
分叉很容易,但是一旦我这样做了,我就无法得到原始的拉动请求。
我在how to apply the patches to my local copy上已经阅读了这个答案,但它并没有告诉我如何获取补丁的URL,而且我似乎无法在github网站上找到它。
答案 0 :(得分:2)
只需在原始项目的拉取请求网址末尾添加.patch
。
例如,如果提取请求的网址为https://github.com/manojlds/Toggler/pull/1
,则可以https://github.com/manojlds/Toggler/pull/1.patch
编辑:你指出的答案是相同的。只需添加.patch
,然后将其封装到git am
答案 1 :(得分:1)
git-pull-request是一个可以列出github存储库的所有打开拉取请求的工具。
此列表包含导致此拉取请求的实际<user>:<branch>
和<number>
。
您可以将此信息提供给另一个提取此信息并创建命令行的脚本(或手动执行此步骤):
# pull request <number>
git pull https://github.com/<user>/<repo> <branch>
您可能不想自动提取所有请求,只是让脚本打印要发出的命令。 通过这种方式,您可以在本地创建一个新分支,引入一个请求,查看它实际执行的操作,进行一些修复,然后将此请求合并到主服务器上。
另请参阅github帮助中的Merging a pull request。
另一种方法是使用
https://github.com/<user>/<repo>/pull/<number>.patch
从<number>s
获取相关git-pull-request
后的。
在这种情况下,<user>
和<repo>
对于每个补丁都是相同的。
这是你分叉的用户/回购。
确保提交哈希值不会更改。 请参阅should-git-apply-or-git-am-come-up-with-the-same-hash了解如何避免它。 当原始维护者稍后提取这些请求时,这会使事情变得更容易。 此外,github网络图将显示您的存储库已拉动这些分支。