获取并签出拉取请求

Fetch and checkout a pull request

我在 BitBucket 中有一个私有存储库。

一位团队成员对此存储库具有读取权限,并已向主存储库发出拉取请求。

我希望能够获取此存储库,这样我就可以在我的计算机上看到更改,而无需合并这些更改。

在 Google 上一段时间后,我发现:

https://confluence.atlassian.com/bbkb/how-to-locally-fetch-and-checkout-a-pull-request-724402529.html

它说将鼠标悬停在新的 repo 上,URL 如下所示。但是,URL 没有显示在我的浏览器上。 更新:请注意,我没有任何权限直接访问此存储库!

因此,我的问题是如何从拉取请求中获取存储库而不将其合并到我的主存储库。

有关如何在 SourceTree GUI 中执行此操作的信息也会有所帮助。

更新

请注意,git ls-remote origin 给出类似于以下内容的输出:

$ git ls-remote origin
35xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx2d        HEAD
35xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx2d        refs/heads/master
36xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx        refs/tags/v1.0.0.0
bdxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx        refs/tags/v2.2.0.0
49xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx        refs/tags/v2.2.0.0^{}

一旦您可以从本地看到该分支(可能通过添加一个远程分支),您就可以检查该远程分支,这样您就可以查看代码是否工作正常等等,然后决定是否合并它。如果你不喜欢它,那就回到你之前所在的任何分支。

git checkout some-remote/some-branch

你可以试试

git fetch origin refs/pull-requests/$PR_NO/from:$LOCAL_BRANCH

但是有一个 open issue 声明不可能按照你的意愿去做。

发现于 。建议下载PR的patch然后手动申请

git fetch origin pull/$PR_No/head:$Local_branch

然后;

git checkout $Local_branch查看不合并的远程拉取请求。