如何更新 git 从 github pull request 创建的分支并进行更新
how to update git branch created from github pull request with more recent changes
我正在试验 github 分叉拉模型扮演维护者的角色(对黄金回购的完全访问)和贡献者的角色(通过分叉和创建拉取请求做出贡献)。
GitHub 为维护者提供了关于如何从拉取请求创建本地分支以便在本地审查代码的明确指示(即 build/test/etc):
来自您的项目回购:
git checkout -b pr-review-branch-name master
git pull [fork-url-from-pull-request]
到目前为止一切顺利。作为维护者,我对 PR 发表评论,并要求做一些额外的工作。贡献者继续进行请求的更改,将它们推送到他在服务器上的分支(并更新拉取请求留言板)..
我的问题:作为维护者,我是否需要如上所述创建一个新分支来拉取拉取请求中的更新代码?或者有没有办法让我更新上面已经创建的分支?
更新: 这是我的确切命令(已删除标识):
$ /c/ws/demo/maintainer
$ git clone https://server.xyz.com/PoCs/fork-and-pull-test.git
Cloning into 'fork-and-pull-test'...
Checking connectivity... done.
$ /c/ws/demo/maintainer
$ cd fork-and-pull-test/
$ /c/ws/demo/maintainer/fork-and-pull-test (master)
$ git checkout -b pr-review-branch-name master
Switched to a new branch 'pr-review-branch-name'
$ /c/ws/demo/maintainer/fork-and-pull-test (pr-review-branch-name)
$ git pull https://server.xyz.com/forker/fork-and-pull-test.git master
...
From https://server.xyz.com/forker/fork-and-pull-test
* branch master -> FETCH_HEAD
Updating 57e8399..96cada4
Fast-forward
..
$ /c/ws/demo/maintainer/fork-and-pull-test (pr-review-branch-name)
$ git status
On branch pr-review-branch-name
nothing to commit, working directory clean
$ git remote -v
origin https://server.xyz.com/PoCs/fork-and-pull-test.git (fetch)
origin https://server.xyz.com/PoCs/fork-and-pull-test.git (push)
分叉您的存储库的人(我称之为 "forker")有一个远程克隆,他们正在致力于他们的功能 b运行ch。拉取请求只是您从他们的远程存储库中获取更改,然后将它们合并到您的本地 b运行ch。 (注意:由于 git pull
与 git fetch && git merge
相同,您可能会将 "Pull Request" 视为 "Fetch & Merge Request"。)
如果您已经从 forker 的存储库中提取(假设他们的远程名为 "forker"),您可能 运行 像这样的命令:
git remote add forker https://github.com/forker/myrepo.git
已经有 b运行ch 的本地副本,并且 b运行ch 有一个与 forker 的远程存储库关联的远程。
如果你 运行 git remote -v
你应该看到 forker 的存储库:
$ git remote -v
origin git@github.com:me/myrepo.git (fetch)
origin git@github.com:me/myrepo.git (push)
forker git@github.com:forker/myrepo.git (fetch)
forker git@github.com:forker/myrepo.git (push)
然后你可以 运行 git pull forker pr-review-branch-name
用他们最新的提交更新你的本地 b运行ch pr-review-branch-name
。每次更新 b运行ch 时都不需要创建新的 b运行ch。
我正在试验 github 分叉拉模型扮演维护者的角色(对黄金回购的完全访问)和贡献者的角色(通过分叉和创建拉取请求做出贡献)。
GitHub 为维护者提供了关于如何从拉取请求创建本地分支以便在本地审查代码的明确指示(即 build/test/etc): 来自您的项目回购:
git checkout -b pr-review-branch-name master
git pull [fork-url-from-pull-request]
到目前为止一切顺利。作为维护者,我对 PR 发表评论,并要求做一些额外的工作。贡献者继续进行请求的更改,将它们推送到他在服务器上的分支(并更新拉取请求留言板)..
我的问题:作为维护者,我是否需要如上所述创建一个新分支来拉取拉取请求中的更新代码?或者有没有办法让我更新上面已经创建的分支?
更新: 这是我的确切命令(已删除标识):
$ /c/ws/demo/maintainer
$ git clone https://server.xyz.com/PoCs/fork-and-pull-test.git
Cloning into 'fork-and-pull-test'...
Checking connectivity... done.
$ /c/ws/demo/maintainer
$ cd fork-and-pull-test/
$ /c/ws/demo/maintainer/fork-and-pull-test (master)
$ git checkout -b pr-review-branch-name master
Switched to a new branch 'pr-review-branch-name'
$ /c/ws/demo/maintainer/fork-and-pull-test (pr-review-branch-name)
$ git pull https://server.xyz.com/forker/fork-and-pull-test.git master
...
From https://server.xyz.com/forker/fork-and-pull-test
* branch master -> FETCH_HEAD
Updating 57e8399..96cada4
Fast-forward
..
$ /c/ws/demo/maintainer/fork-and-pull-test (pr-review-branch-name)
$ git status
On branch pr-review-branch-name
nothing to commit, working directory clean
$ git remote -v
origin https://server.xyz.com/PoCs/fork-and-pull-test.git (fetch)
origin https://server.xyz.com/PoCs/fork-and-pull-test.git (push)
分叉您的存储库的人(我称之为 "forker")有一个远程克隆,他们正在致力于他们的功能 b运行ch。拉取请求只是您从他们的远程存储库中获取更改,然后将它们合并到您的本地 b运行ch。 (注意:由于 git pull
与 git fetch && git merge
相同,您可能会将 "Pull Request" 视为 "Fetch & Merge Request"。)
如果您已经从 forker 的存储库中提取(假设他们的远程名为 "forker"),您可能 运行 像这样的命令:
git remote add forker https://github.com/forker/myrepo.git
已经有 b运行ch 的本地副本,并且 b运行ch 有一个与 forker 的远程存储库关联的远程。
如果你 运行 git remote -v
你应该看到 forker 的存储库:
$ git remote -v
origin git@github.com:me/myrepo.git (fetch)
origin git@github.com:me/myrepo.git (push)
forker git@github.com:forker/myrepo.git (fetch)
forker git@github.com:forker/myrepo.git (push)
然后你可以 运行 git pull forker pr-review-branch-name
用他们最新的提交更新你的本地 b运行ch pr-review-branch-name
。每次更新 b运行ch 时都不需要创建新的 b运行ch。