由于Repository Merge尚未实现,还有其他选择吗?

时间:2013-04-24 19:45:12

标签: .net git libgit2 libgit2sharp

我们公司的一个项目具有复杂的文件同步方案,并且自然而然地将git作为解决方案。由于它是一个.net项目,libgit2sharp正是我们正在寻找的API。

nullpointer's response to this thread来看,合并仍然没有实现,并且无法合并远程分支的更改可能导致我们想出另一种方法来解决这个问题(我们不希望自从我们用libgit2sharp做的测试真的很成功。)

是否有提供远程合并的可能性或替代方案?它会在短期内发布吗?

提前致谢。

2 个答案:

答案 0 :(得分:3)

  

它会在短期内发布吗?

合并必将得到实施。但是,还没有时间表。首先,必须最终确定此 Pull request 作为ligit2项目的一部分。也许还需要一些其他更高级别的API。然后它将通过LibGit2Sharp提供。

  

是否有提供远程合并的可能性或替代方案?

您是否考虑暂时炮轰“git.exe”?

这就是 GitHub for Windows Git-Tfs 所做的事情。

部分利用LibGit2Sharp,部分依赖git.exe处理尚未提供的所有内容。

然后,一旦将所需功能添加到LibGit2Sharp,请通过调用LibGit2Sharp替换对git.exe的调用。

如果你已经设置了一些光抽象层和一些单元测试,这不应该是一个太坎坷的道路。

更新

合并功能现已在LibGit2Sharp中提供(请参阅 pull request #608

答案 1 :(得分:2)

16/01/2014以来,已提供合并,但截止日期为2014年1月23日,not on NuGet

无论如何要使用它,请将您的依赖项文件夹中的LibGit2Sharp.dll和LibGit2Sharp.xml文件(可能:... / your-solution-folder / packages / LibGit2Sharp.0.15.0.0 / lib / net35)替换为来自上一次成功(绿色)CodeBetter CI build的文物。

ones from January 22nd是替代品,在程序集属性中仍标记为v 0.15.0.0,因此在手动替换dll时不会混淆NuGet包管理器。

我应该补充说合并是一种享受。那些libgit2sharp人员血腥智能