如何获取GitHub拉取请求并将其作为单独项目下载?

Dou*_*ith 19 git github

假设我有这个拉取请求,我想下载它就像它是自己的单独项目一样.我该怎么做呢?我没有看到该功能的任何按钮.

Nou*_*him 16

您可以在此处下载该提交的树的快照.这是一个导出的tarball,因此您将没有任何历史记录.这就是你要找的东西吗?您可以通过首先查看他希望您提交的提交然后选择列表中最新提交来实现此目的.导航到此URL将为您提供差异(即它正在检查提交对象而不是实际树).您现在可以简单地commit将上面的URL 更改为tree或者单击"浏览代码"按钮.一旦你这样做,右边有一个"下载ZIP"按钮,允许你下载树.

如果您想要完整的历史记录,那么您需要获取mlwelles更改.您可以通过转到此处mlwelles:master存储库并将其作为远程添加到您自己的本地克隆使用来完成此操作.然后,您可以获取他要求您合并使用的更改.这些变化将在.您可以使用和(或其他)查看它们,使用(针对当前分支)查看差异,或者最终整合他要求您使用的更改.执行此操作后,您可以使用(假设添加原始存储库)将更改推送到您自己的存储库.git remote add mlwelles git@github.com:mlwelles/AFOAuth2Client.gitgit fetch remote masterFETCH_HEADgit checkout FETCH_HEADgit loggit diff FETCH_HEADgit merge FETCH_HEADgit push origin masterorigin

  • 你是怎么做到的?是的,这主要是我想要的。但是,如果我仅在计算机上拥有一份主仓库的副本,并希望从命令行合并合并请求,该怎么办?那可能吗?如果是这样,我是否可以将其合并为遥控器?如果是这样(很多if sos ...),我从哪里获得遥控器的URL? (2认同)

mba*_*k2k 8

如果您只对 tar 或 zip 存档感兴趣,实际上有一个API。您可以使用如下链接来下载拉取请求的内容:

https://api.github.com/repos/AFNetworking/AFOAuth2Manager/zipball/pull/55/head

重要的是 /zipball/ (或 /tarball/)后面的部分必须是有效的 git 引用。对于拉取请求,这将是 pull/ ID /head,其中 ID 是拉取请求 ID。请参阅本指南的步骤 5 。


Pip*_*pin 6

您已经检查过这个答案了吗?

Michael 的拉取请求看起来像这样:

git clone https://github.com/mlwelles/AFOAuth2Client.git -b master
Run Code Online (Sandbox Code Playgroud)

这最终给了我迈克尔在本地的拉取请求的克隆。