【发布时间】:2016-04-29 16:30:50
【问题描述】:
我会尝试将一个分支合并到另一个分支,但我一直都有 MergeConflictException。所以我尝试暂存所有 repository.Index.Conflicts 但没有任何更改。
string[] conflictArray = new string[10000];
try {
repository.Merge(branch[selected], GitHelper.getSignature(), options);
} catch(MergeConflictException e) {
if (repository.Index.Conflicts.Count() > 0) {
foreach (var c in repository.Index.Conflicts) {
repository.Index.Stage(c.Theirs.Path);
}
}
}
我搜索了很多以获得任何帮助,我从 LibGit2Sharp.Tests 中阅读了 MergeFixture.cs。
编辑:对不起,我没有告诉你我为什么要做这个,但我是学生,我的老师给了我这个项目与 .NET 3.5 相关,所以我使用最新的 LibGit2Sharp 3.5 版本。
【问题讨论】:
-
“没有任何变化”是什么意思?您是否在合并决议后提交?但是请注意,如果您遇到合并冲突,则需要解决它。如果您暂存所有这些文件而不解决冲突,您将在其中包含冲突标记。正确的做法是放弃或根据您正在编写的程序类型询问用户。
-
我在问问题之前展示了这个:stackoverflow.com/questions/33812895/… 我告诉'没有任何改变',因为我每次都遇到相同的异常。那么你能帮我解决冲突吗?
-
为什么要上传注释代码?这令人困惑。
-
我删除了注释代码,我忘了删除它们,对不起我的英语,我是法国人。我搜索解决冲突,但我必须使用 Ancestor 吗?
标签: c# git libgit2sharp