2016-06-09 4 views
1

Мне нужно нажимать теги, которые локально локально удаляются с помощью libgit2sharp. Но я не мог найти, как это сделать.Как нажимать метки с libgit2sharp

Я много искал в реестре github libgit2sharp (вопросы и тесты), и ничего не получилось.

There are some discussions об альтернативе git push --tags и люди говорят, что эта команда просто облегченная запись в git push <remote> refs/tags/*:refs/tags/* и что это именно то, что вам нужно сделать в libgit2sharp для того, чтобы получить свои метки толкнул.

Но как я могу перевести эту команду

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

В libgit2sharp код?

Спасибо всем.

ответ

3

Ну, я нашел проблему в своем подходе. Я делаю что-то вроде этого:

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

Но libgit2sharp не позволяют использовать групповой символ (*). Затем я сделал тест, удалив шаблон и изменив его с именем одного из моих тегов, и он сработал.

Но мне еще нужно отправить более одной метки к удаленным, я сделал обходной путь, используя цикл Еогеасп, например:

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

Есть еще один (лучше или вправо) способ сделать это?