2016-06-09 1 views
1

libgit2sharp를 사용하여 원격으로 로컬에 존재하는 태그를 푸시해야합니다. 그러나 나는 그것을하는 방법을 찾을 수 없었다.libgit2sharp로 태그를 푸시하는 방법

libgit2sharp (문제 및 테스트 사례)의 github 저장소에서 많은 부분을 검색했지만 아무 것도 표시되지 않았습니다. 이 명령은 git push <remote> refs/tags/*:refs/tags/*에 불과 syntatic 당이라고 말하는 git push --tags 사람들에게 대안에 대한 그것은 당신이 당신의 태그를 얻기 위해 libgit2sharp에서해야 할 일을 정확히 그

There are some discussions

은 밀었다.

그러나 어떻게이 명령 libgit2sharp 코드로

git push <remote> refs/tags/*:refs/tags/* 

를 번역 할 수 있습니다?

감사합니다.

답변

3

글쎄, 내 접근 방식에서 문제가 발견되었습니다. 나는 이런 식으로 일을했다 :

repo.Network.Push(repo.Network.Remotes["origin"], @"refs/tags/*", options); 

그러나 libgit2sharp는 와일드 카드 (*)의 사용을 허용하지 않는다. 그런 다음 와일드 카드를 제거하고 태그 중 하나의 이름으로 바꾸면 테스트가 작동했습니다.

하지만 난 여전히 원격으로 하나 개 이상의 태그를 보낼 필요가, 내가 해결이처럼 foreach 루프를 사용하여 만든 :

foreach (var tag in repositorio.Tags) 
{ 
    repo.Network.Push(repo.Network.Remotes["origin"], tag.CanonicalName, options); 
} 

이 그것을 할 수있는 또 다른 (더 나은 또는 오른쪽) 방법이 있나요?

관련 문제