Libgit2sharp:如何使用“git pull”

时间:2016-03-19 10:37:15

标签: git-pull libgit2sharp

using (var repo = new Repository("path/to/your/repo"))
{
    LibGit2Sharp.PullOptions options = new LibGit2Sharp.PullOptions();
    options.FetchOptions = new FetchOptions();
    options.FetchOptions.CredentialsProvider = new CredentialsHandler(
        (url, usernameFromUrl, types) =>
            new UsernamePasswordCredentials()
            {
                Username = USERNAME,
                Password = PASSWORD
            });
    repo.Network.Pull(new LibGit2Sharp.Signature(USERNAME, EMAIL, new DateTimeOffset(DateTime.Now)), options)
}

我不知道如何设置参数,当我使用它时,会出现一个错误-----不支持的URL协议。你能告诉我如何设置参数吗?

1 个答案:

答案 0 :(得分:0)

这取决于您使用的网址。

例如,issue 649明确指出:

  

git.git支持远程配置中的相对URL,并相对于工作目录解析它们   libgit2目前因“不支持的网址协议”而失败。

     

它希望路径是绝对的。

因此,如果您的网址实际上是本地路径,请确保它是绝对路径(而不是相对路径)。

commented作为崔重阳,支持使用sssh网址的https instea。