使用递归策略和耐心选项进行Git合并

如何使用递归策略提供的耐心选项与git合并分支?我在用着
git版本1.7.3.1.msysgit.0

甚至文档不一致,而且与实际的命令输出不同。

Docs say:

git merge [-s <strategy>] [-X <strategy-option>] <commit>

并在文本中进一步说明:

-X<option>

(没有空间)

命令输出说:

-X, --strategy-option <option=value>

option for selected merge strategy

所以我尝试了几个版本,具有以下结果:

$ git merge -s recursive -Xpatience sourceBranch
fatal: Unknown option for merge-recursive: -Xpatience

$ git merge -X patience sourceBranch
fatal: Unknown option for merge-recursive: -Xpatience

$ git merge -Xpatience sourceBranch
fatal: Unknown option for merge-recursive: -Xpatience

$ git merge --strategy-option patience sourceBranch
fatal: Unknown option for merge-recursive: -Xpatience

$ git merge -X option=patience sourceBranch
fatal: Unknown option for merge-recursive: -Xoption=patience

$ git merge --strategy-option option=patience sourceBranch
fatal: Unknown option for merge-recursive: -Xoption=patience

$ git merge option=patience sourceBranch
fatal: 'option=patience' does not point to a commit

$ git merge -X option=patience sourceBranch
fatal: Unknown option for merge-recursive: -Xoption=patience

它看起来好像该选项没有实现…

git merge-recursive的–patience选项在commit 58a1ece478c6038a7eb0b6e494d563bd5e6d5978中引入。您可以在git.git的克隆中找到git tag包含该更改的版本–contains 58a1ece478:

v1.7.4
v1.7.4-rc0
v1.7.4-rc1
v1.7.4-rc2
v1.7.4-rc3
v1.7.4.1

所以我怀疑你只是使用一个稍微旧版本的mSysGit。现在有1.7.4的预览版本 – 我想你应该尝试一个。

我刚刚尝试过git版本1.7.4,以下命令行语法适用于我:

git merge -s recursive -X patience other-branch
http://stackoverflow.com/questions/5024402/git-merge-using-recursive-strategy-and-patience-option

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:使用递归策略和耐心选项进行Git合并