Срочные изменения в LibGitSharp v0.17
Я новичок в библиотеке libgit sharp. У меня есть строка кода, которая работает с v0.15 из libgit sharp. Я обновил пакет до последней версии 0.22. Repository.Network.FetchHeads.FirstOrDefault ()
FetchHeads устарела в v0.17 ( https://github.com/libgit2/libgit2sharp/blob/master/CHANGES.md).
Вот фрагмент, который я хочу переписать
var latestRemoteHead = repo.Network.FetchHeads.FirstOrDefault();
if (latestRemoteHead != null){
var latestRemoteHeadCommit = (Commit)latestRemoteHead.Target;
repo.Reset(ResetMode.Hard, latestRemoteHeadCommit);
}
1 ответ
FetchHead
действительно было объявлено устаревшим в https://github.com/libgit2/libgit2sharp/commit/c7e11bbff588c0f2b84b3f9dbdfaf2e5ef00cf91, как часть PR Expand Merge API PR # 643:
- протестовать
Network.Fetchheads
,Repository.MergeHeads
так как они должны быть только внутренними. - Ввести возможность извлекать настроенную ветку восходящего потока для текущей ветки
Примите 35ea14d в апреле 2014 года для libgit2sharp 0.18, установите класс FetchHead как внутренний.
Вам нужно будет перечислить все удаленные ветви и проверить их фиксации HEAD, чтобы получить то, что вы имели от FetchHeads.
Как первый ключ, смотрите LibGit2Sharp.Tests/TestHelpers/ExpectedFetchState.cs
перечислить branch.Tip.Id