总是在git冲突中选择他们的

时间:2019-01-30 17:01:18

标签: c# git libgit2sharp

与LibGit2Sharp合并时,我试图解决简单的冲突。 问题是,对于已知文件,当这是唯一冲突时,我要使用“其”版本,否则将其称为目标版本。

目前,这就是我拥有的:

var saidConflict = repo.Index.Conflicts.FirstOrDefault(x => x.Ancestor.Path.Contains("Interface/App.config"));

if(repo.Index.Conflicts.Count() == 1 && saidConflict != null)
{
    Debug.WriteLine("In the app config case");
    //repo.CheckoutPaths(repo.Head.CanonicalName, new String[] { saidConflict.Theirs.Path } , new CheckoutOptions());
    repo.Index.Add("Interface/App.config");
    repo.Commit("Merging app.config", merger, merger, new CommitOptions());
}
else
{
    Debug.WriteLine("Aborting merge");
    repo.Reset(ResetMode.Hard, lastMergeCommit);
}

我似乎找不到找到与VS2017的“保持现状”相同行为的方法。 有没有人做过?

非常感谢您

0 个答案:

没有答案