Pergunta

Eu tenho um repositório em um servidor da Web de rede:

http://rene:9095/git/TestGit.git

Quando tento abri -lo de código C# com libgit2sharp Ele lança a seguinte exceção:

**Excepcion:** Path 'http://rene:9095/git/TestGit.git' doesn't point at a valid Git repository or workdir.
**InnerException:**  

O código que eu uso e que causa o Exception:

Repository repo = new Repository(
  "http://rene:9095/git/TestGit.git", 
  new RepositoryOptions()
);

O repositório funciona bem com Sourcetree ou TortoiseGit, mas não com o código. Eu o clonei usando repositório.clone () e funciona bem também.

Você tem alguma ideia de por que o repositório lança representante inválido?

Obrigado no AdvNace !!

Nico.

Foi útil?

Solução

De acordo com documentação, o construtor parece esperar um repositório local; portanto, o caminho que você fornece deve apontar para o seu sistema de arquivos.

Eu acho que você vai querer chamar o método estático Repository.Clone(), como tem a assinatura string sourceUrl, string workdirPath, [..]. Ele retorna um caminho de string para o repositório clonado, para que você possa escrever como:

var repoUrl = "http://repository-url";
var workingDir = @"C:\git\ProjectName\";
var repo = new Repository(Repository.Clone(repoUrl, workingDir));
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top