我想检查之前创建的拉请求(通过GitHub web界面创建)。我搜索了一下,发现不同的地方有裁判/拉或裁判/拉/pr
但是当我添加fetch = +refs/pull/*/head:refs/remotes/origin/pr/*到git配置文件并进行git取回时
我哪里做错了?GitHub应该自动创建拉/xyz东西,还是我必须配置一些东西?
我想检查之前创建的拉请求(通过GitHub web界面创建)。我搜索了一下,发现不同的地方有裁判/拉或裁判/拉/pr
但是当我添加fetch = +refs/pull/*/head:refs/remotes/origin/pr/*到git配置文件并进行git取回时
我哪里做错了?GitHub应该自动创建拉/xyz东西,还是我必须配置一些东西?
当前回答
假设你的起源和上游信息如下所示
$ git remote -v
origin git@github.com:<yourname>/<repo_name>.git (fetch)
origin git@github.com:<yourname>/<repo_name>.git (push)
upstream git@github.com:<repo_owner>/<repo_name>.git (fetch)
upstream git@github.com:<repo_owner>/<repo_name>.git (push)
分行的名字是
<repo_owner>:<BranchName>
then
git pull origin <BranchName>
应该做这项工作
其他回答
将远程公关分支机构导入本地分支机构:
Git获取来源' remote_branch ': ' local_branch_name '
配置本地分支的上游为远端分支。
git分支——set-upstream-to=origin/PR_Branch_Name local_branch
当您想再次将本地更改推到PR分支时
git push origin HEAD:remote_PR_Branch_name
有一种使用git-cli的简单方法
gh pr checkout {<number> | <url> | <branch>}
参考:https://cli.github.com/manual/gh_pr_checkout
我更喜欢在不创建本地分支的情况下提取和签出,并且处于HEAD分离状态。它允许我快速检查拉取请求,而不会用不必要的本地分支污染本地机器。
git fetch upstream pull/ID/head && git checkout FETCH_HEAD
其中ID是一个拉请求ID,上游是已经创建的原始拉请求(例如,它可以是origin)。
Github最近发布了一个名为Github -cli的cli实用程序。在安装它之后,你可以使用它的id (doc)在本地签出一个拉请求的分支。
例:gh pr checkout 2267
这也适用于fork,但如果你需要回推到fork,你需要添加远程存储库并使用传统的git推送(直到这个票据在gh实用程序中实现)
在更新版本的Git中:
Git fetch origin refs/pull-requests/<id>/from:<localbranchname>