优先选择的替代方案

3 git overriding cherry-pick

git 中有一个cherry-pick 命令,它允许我在当前之上复制一些提交。然而,它确实解决了一些我不关心的冲突。樱桃挑选的替代方案是什么,它只是将选择的提交复制到当前提交之上?

我可以手动执行此操作:选择所需的提交,复制其文件,将它们保存到非托管文件夹中,选择当前提交(将作为新提交的基础),将存档文件复制到 git 工作文件夹中。另外,我必须复制提交消息。这是我目前为避免变更冲突而做的巨大麻烦。哪个命令可以帮助我自动实现目标?

Von*_*onC 5

您可以使用合并策略选项“theirs”:

git cherry-pick <SHA-1> -Xtheirs
Run Code Online (Sandbox Code Playgroud)

<SHA-1>您想要挑选到分支中的提交的哈希值在 哪里。

这意味着,如果发生冲突,Git 总是会使用精选的提交版本(“他们的”)来解决它。


请注意,即使没有该选项,您也可以手动执行相同的操作(但这对于许多文件来说无法很好地扩展)

git cherry-pick <SHA-1>
error: could not apply <SHA-1>... [Commit Message]
hint: after resolving the conflicts, mark the corrected paths

git checkout --theirs path/to/conflicted_file.php
git add path/to/conflicted_file.php
Run Code Online (Sandbox Code Playgroud)