2016-03-19 2 views
0
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) 
} 

я не konw как установить аргументы, когда я использую его, одна ошибка будет отображаться ----- Неподдерживаемое URL protocol.could вы сказать мне, как установить аргументы ?.Libgit2sharp: как использовать «Git тянуть«

+0

Каков протокол URL, который вы пытаетесь использовать? –

ответ

0

Это зависит от URL, который вы используете

например, issue 649 ясно сказано:

git.git поддерживает относительные URL-адреса в удаленных конфигурациях и решает их по отношению к рабочему каталогу.
libgit2 в настоящее время терпит неудачу с «Неподдерживаемый протокол URL».

Ожидает, что пути будут абсолютными.

Так что если ваш url на самом деле является локальным путем, убедитесь, что это абсолютный путь (а не относительный).

Как commented по 崔重阳, поддерживается https instea sssh url.

+0

ОК! Спасибо! Я нахожу причину. Я использовал ssh раньше, если я сменил http, это успешно! –

+0

@ 崔 重阳 OK. Я включил ваш комментарий в ответ для большей наглядности. – VonC

Смежные вопросы