GitHub:如何向本地仓库添加开放拉取请求?

dhr*_*hrm 22 git github

我正在iOS Xcode项目中使用NSDate-Extensions插件.主仓库有一些错误,似乎在两个Pull Requests中修复:

这些请求仍然是开放的,不会被主回购接受.如何以Git方式将这些添加到我的本地仓库?如果我的本地仓库得到更新,如果他们的Fork稍后更新,那就没问题了:

Jon*_*yJD 17

您可以从命令行提取请求而不添加遥控器:

git pull https://github.com/erica/NSDate-Extensions +refs/pull/6/head
Run Code Online (Sandbox Code Playgroud)

如果您还不确定要这样做,那么您可能希望首先检查该分支:

git fetch https://github.com/erica/NSDate-Extensions +refs/pull/6/head:refs/origin/pull/6
Run Code Online (Sandbox Code Playgroud)

与使用补丁文件相比,这样做的好处是git可以获得实际的提交.所以git可以看到master何时被合并到pull请求中.补丁文件完全没有意识到这种差异.


man*_*lds 15

添加.patch到拉动网址的末尾 - 您可以在您的回购下载并应用补丁:

curl https://github.com/erica/NSDate-Extensions/pull/6.patch | git am
Run Code Online (Sandbox Code Playgroud)


Lee*_*ley 12

您应该添加提供拉取请求的分支,并将它们添加为远程:

然后你可以轻松地下载他们的变化:

轻松采取个人提交"

有关完整示例,请想象一下Ruby Capistrano项目中来自RogerE的 pull request(6bbbcc5).

$ git clone git@github.com:capistrano/capistrano.git
$ cd capistrano
$ git remote add RogerE https://github.com/RogerE/capistrano.git
$ git fetch RogerE
$ git cherry-pick 6bbbcc5
Run Code Online (Sandbox Code Playgroud)