2

我们公司有一个项目,它具有复杂的文件同步场景,自然而然地 git 作为解决方案出现了。因为它是一个 .net 项目,所以 libgit2sharp 正是我们正在寻找的 API。

nullpointer 对此线程的响应看来,merge 仍未实现,并且无法合并来自远程分支的更改可能会导致我们考虑另一种方法来解决这个问题(我们不希望因为我们已经进行了测试使用 libgit2sharp 确实很成功)。

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

提前致谢。

4

2 回答 2

3

会在短期内发布吗?

合并势在必行。但是,目前还没有时间表。首先,这个拉取请求必须作为 ligit2 项目的一部分最终确定。也许还需要一些额外的更高级别的 API。然后它将通过 LibGit2Sharp 提供。

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

您是否考虑过暂时使用“git.exe”?

例如,这就是GitHub for WindowsGit-Tfs所做的。

部分利用 LibGit2Sharp,部分依赖 git.exe 来处理尚不可用的所有内容。

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

如果您已经放置了一些轻量级的抽象层和一些单元测试,那么这条路应该不会太坎坷。

更新

合并功能现在在 LibGit2Sharp 中可用(请参阅拉取请求 #608

于 2013-04-24T20:13:06.117 回答
2

16/01/2014以来,合并已可用,但截至 23/01/2014,不在 NuGet 上

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

从 1 月 22 日开始的替换是下降的,并且仍然在程序集属性中标记为 v 0.15.0.0,因此当您手动替换 dll 时它不会混淆 NuGet 包管理器。

我应该补充一点,合并是一种享受。那些 libgit2sharp 的人非常聪明

于 2014-01-23T17:21:43.657 回答