Таги Git

Легковесные Таги

Мы можем создавать таг чтобы сослаться на определенный коммит выполняя git tag без каких-либо аргументов.

$ git tag stable-1 1b2e1d63ff

После этого, мы можем использовать stable-1 чтобы ссылаться на коммит 1b2e1d63ff.

Это создает легковесный таг, обычно это ветка которая никогда не двигается. Если вам хочется включить коментарий в таг, а также возможно вставить криптографическую подпись, тогда ты можем создать "таг объект*.

Таговые объекты

Если в команду передан один из параметров -a, -s, или -u , то эта команда создает таговый объект, и требует сообщение-описание тага. Если только не переданы параметры -m или -F , то запускается редактор для пользователя чтобы он мог ввести сообщение-описание тага.

Когда это происходит, новый объект добавляется в базу данных объектов Git и таговая ссылка указывает на этот таговый объект, лучше чем сам коммит. Польза от этого, то что вы можете подписать таг, и вы можете проверить позже что это правильный коммит. Вы можете создать таговый объект след.образом:

$ git tag -a stable-1 1b2e1d63ff

Вообще в действительности возможно поставить таг на любой объект, но таггинг объектов типа коммит более общий. (В исходниках ядра Linux, первый таговый объект ссылается на дерево, ранее чем на коммит)

Подписанные таги

Если у вас есть установленный GPG ключ, вы можете создать подписанный таг легко. Первое, что вам нужно это установить ваш id ключа в ваш .git/config или ~.gitconfig файл.

[user]
    signingkey = <gpg-key-id>

Вы также можете установить это выполнив

$ git config (--global) user.signingkey <gpg-key-id>

Теперь вы можете создать подписанный таг просто заменив -a на -s.

$ git tag -s stable-1 1b2e1d63ff

Если у вас нет ключа GPG в вашем конфигурационном файле, вы можете выполнить то же самое след.путем:

$ git tag -u <gpg-key-id> stable-1 1b2e1d63ff


github logo