Я создаю Release
, используя github's octokit
API. Метод create release создает release, а также создает соответствующий тег.
Я также хочу создать дополнительный тег. Итак, используя пример здесь я пытаюсь создать тег. Я предполагаю, что когда GitHubClient создает релиз, он также должен фиксировать изменения . Однако я не уверен, как получить SHA коммита релиза, чтобы я мог использовать этот SHA для создания дополнительного тега?
Вот мой текущий код:
var client = new GitHubClient(new ProductHeaderValue(Constants.ProductHeader));
var tokenAuth = new Credentials(options.AccessToken);
client.Credentials = tokenAuth;
var newRelease = new NewRelease(options.Version)
{
Name = options.Version,
Body = "This is test release",
Draft = false,
Prerelease = false
};
var result = await client.Repository.Release.Create(Constants.Owner, repositoryName, newRelease);
??? How do i get `sha` here for the release
var tag = "AdditionalTag"
var newTag = new NewTag()
{
Message = tag,
Tag = tag,
Type = TaggedType.Tag,
Object = ???
};
await client.Git.Tag.Create(Constants.Owner, repositoryName, newTag);
Это вызывает исключение «Ошибка проверки», поскольку я не устанавливаю SHA
.
Вопросы
Как рассчитать SHA
объекта git?
Класс octokit
также имеет класс TagsClient
. В чем разница между TagsClient
и GitHubClient
?