Mar*_*ers 5 git git-checkout pull-request atlassian-sourcetree
有时,拉取请求非常复杂和/或可能存在错误。在这种情况下,仅通过阅读代码来对拉请求进行抽查可能会有些不合理。在合并之前先在本地检出,拉取和构建该拉取请求更有意义。通过这种方式,回购维护者可以更加放心,拉取请求不会引入任何回归问题。
我可以很容易地从命令行检出拉取请求,但是我更喜欢使用SourceTree。我知道使用命令行非常简单明了,但是我相信只要有可能,就可以通过命令行工具使用GUI工具。SourceTree已经成为事实上的标准GUI 的git客户端的窗口,因此它似乎SourceTree会对这些基本功能。但是,我尝试了许多不同的命令和对话框,但似乎无法访问SourceTree中的pull请求。
是否可以仅使用SourceTree在本地拉取请求?怎么样?
将您更改.git/config为以下内容并进行提取:
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = git@github.com:{user}/{repo}.git
+ fetch = +refs/pull/*/head:refs/remotes/origin/pr/*
Run Code Online (Sandbox Code Playgroud)
我在寻找不使用命令窗口的更好方法时遇到了您的问题。
我目前的做法是:
它不提供对 PR 的直接访问权限,但它确实为我提供了更改的本地副本。我仍然通过github接受并合并或要求修改。如果 PR 发生变化,我只是将更新拉入分支。
Sourcetree 似乎将 PR 视为管理将本地更改返回到原始存储库的一种手段。
无法直接在 SourceTree 中从分叉存储库检出拉取请求。
我也将这个问题转发给了atlassian问答板,并且这个问题在评论中得到了回答。
据我所知,没有办法直接在 sourcetree 中执行此操作,因为 sourcetree 用于处理您本地拥有的 git 存储库,而不是用于您可以在 Bitbucket 或 Github 中访问的 PR 或远程存储库。
本质上,您必须单独克隆其他存储库,然后切换到用于拉取请求的任何分支。
有点遗憾的是,这个功能在命令行中很容易实现,但在 SourceTree 的 Gui 中却比较麻烦。