为什么我的上游 PR 检出不包含最新提交?
Why does my checkout of an upstream PR not contain the latest commit?
我可以使用以下 cmd
通过 "c12b34"(几天前制作)的提交看到此 PR
git ls-remote upstream
c12b34afadc4df762eaa482984170974c6f6b1c0 refs/pull/35/head
然后我检查 PR。但是log中不包含上面的commit;它只显示几个月前的提交。
git checkout -b upstream/35
我错过了什么?谢谢。
当您使用 git checkout -b
时,您会根据您 已经 的一些提交创建一个本地名称——分支名称。您可能没有所需的提交。您将需要 运行 git fetch
来获得这些提交。
然而,这些提交是通过查询名称中的名称-space 找到的,您的 Git 通常 不会 带来。您将需要 运行,例如:
git fetch upstream refs/pull/35/head:refs/heads/pr/35
例如, (a) 获取提交,然后 (b) 创建一个名为 pr/35
的本地分支。此时不需要单独的 git checkout -b
,因为 fetch
操作创建了 refs/heads/pr/35
,它是您存储库中名为 pr/35
的分支。
(记得在完成后删除您的名字 pr/35
。)
我可以使用以下 cmd
通过 "c12b34"(几天前制作)的提交看到此 PRgit ls-remote upstream
c12b34afadc4df762eaa482984170974c6f6b1c0 refs/pull/35/head
然后我检查 PR。但是log中不包含上面的commit;它只显示几个月前的提交。
git checkout -b upstream/35
我错过了什么?谢谢。
当您使用 git checkout -b
时,您会根据您 已经 的一些提交创建一个本地名称——分支名称。您可能没有所需的提交。您将需要 运行 git fetch
来获得这些提交。
然而,这些提交是通过查询名称中的名称-space 找到的,您的 Git 通常 不会 带来。您将需要 运行,例如:
git fetch upstream refs/pull/35/head:refs/heads/pr/35
例如, (a) 获取提交,然后 (b) 创建一个名为 pr/35
的本地分支。此时不需要单独的 git checkout -b
,因为 fetch
操作创建了 refs/heads/pr/35
,它是您存储库中名为 pr/35
的分支。
(记得在完成后删除您的名字 pr/35
。)