我如何使用 TortoiseGit Cherry 选择另一个分支的提交而不提交?

nir*_*pam 4 git tortoisegit

我可以使用 bash 挑选一个提交

git cherry-pick -n <HASH>
Run Code Online (Sandbox Code Playgroud)

但是有没有办法使用 TortoiseGit 来做到这一点呢?

MrT*_*Tux 9

签出您想要挑选提交的分支。然后

  • 打开日志对话框,
  • 滚动到提交(也许您必须选择左下角的“所有分支”或使用左上角的蓝色分支名称来选择源分支并过滤提交哈希列表),
  • 打开提交上的上下文菜单并
  • 选择“樱桃选择此提交...”。

现在你基本上有两个选择,因为该-n选项在 TortoiseGit 中不直接可用。

1)将cherry-pick类型从“Pick”更改为“Edit”,启动cherry-pick,然后选中“Edit commit”复选框,保持提交对话框打开,进行更改,然后提交并完成cherry-挑选。

2)完成樱桃采摘,然后

  • 转到你的 HEAD 提交,
  • 选择樱桃纠察队提交的父提交,
  • 并在上下文菜单中选择“重置”
  • 选择混合。

参见 https://tortoisegit.org/docs/tortoisegit/tgit-dug-cherrypick.html


Elp*_*Kay 5

假设您想从dev到 中挑选 Commit X。master

  1. 右键单击存储库并选择 TortoiseGit -> Switch/Checkout -> 选择master并按 OK。
  2. 右键单击存储库并选择 TortoiseGit -> 浏览引用 -> 右键单击dev​​ -> 显示日志。
  3. 右键单击要挑选的提交,然后选择挑选此提交 -> 继续。
  4. 由于cherry-pick菜单不支持该选项-n,我们可以混合重置回之前的提交来模拟-n。TortoiseGit -> 浏览引用 -> 右键单击master​​ -> 显示日志 -> 右键单击​​上一个提交 -> 将“master”重置为此... -> 按确定。