适用于.NET的Mercurial API

Dev*_*per 3 .net api mercurial

我想为mercurial创建一个.NET客户端.没什么好看的,只是基本的东西.

ang*_*son 6

我已经开始在.NET 4.0中为Mercurial命令行客户端编写一个包装类库.现在用它还为时尚早,但你可能想要留意它.希望它对更多人而言不仅仅对我有用.

代码在bitbucket上作为开源发布,这里:

http://bitbucket.org/lassevk/mercurial.net

目前您可以进行基本的日志检索.指定revsets的完整语法支持不到位,但您可以执行以下操作:

var repo = new Repository(@"c:\dev\some\project\repo");
var log = repo.Log(verbose: true, set: RevisionSet.FromRevision(10)); // 10:tip

var changesByMeThatModifiesIgnoreFile =
    from changeset in log
    where changeset.AuthorName == "Lasse V. Karlsen"
       && changeset.PathActions.Any(pa =>
           pa.Path == ".hgignore" &&
           pa.Action == PathActionType.Modify)
    select changeset;
Run Code Online (Sandbox Code Playgroud)

我计划支持所有内置命令,以便您可以提交,更新,推送,拉取,检查传入和传出,克隆等.