繁体   English   中英

如何从已删除的远程分支 git cherry-pick 提交?

[英]How to git cherry-pick commits from a deleted remote branch?

          A--B--C--D = Local + RemoteTracking + Origin: Branch1 {I want ?, E, F from below)
         /
        /     /--?--E--F--G = Branch2 (deleted after merge into Master)
       /     /             \
<--H--/--?--/--I--J---------K--L = Local + RemoteTracking + Origin: Master

我住在 Branch1(非常旧且未与 Master 合并),需要来自远程 Branch2 的一些提交,该 Branch2 已被合并回 Master。 我不知道 Branch2 的总提交历史,但知道我可能需要它的大约 3 次提交(?、E、F)。 但是,我无法弄清楚如何查找和挑选这些确切的提交,因为我无法再克隆这个已删除的存储库。

我无法通过 GitLab/gitk 讲述 Branch1 的历史,也无法在gitlab.com/../branches中提出。 我不能使用 merge-base 因为我不能克隆已删除的 repo。 当我尝试git reflog show Branch2时,我得到一个“致命的:模棱两可的论点”。

  • 对于 GitLab:使用 Repository > Graph 直观地跟踪分支。 或者甚至更好,go 到来自K的合并请求和 > 父级概述,或 > 提交您将了解从该分支/合并到然后挑选的提交。

  • 从命令行或 Git-Bash:如果我还不知道的话,我本可以通过git reflog (或来自 Master 的git log )查找GK 但是随后您可以简单地git checkout出该提交,然后git log或来自该提交的gitk并了解其历史记录。

在我的特殊情况下,@eftshift0 是正确的,因为所有提交都已被压缩,并且在@Ôrel 的评论之后我意识到我可以找到K并单独挑选G (如果有更好的全局/所有情况的答案,我会接受)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM