Организация тегов на git
Теги: git
Создавать метку надо сразу после коммита.
$ git tag
v1.0
v2.0
$ git tag -l "v1.8.5*"
v1.8.5
v1.8.5-rc0
v1.8.5-rc1
v1.8.5-rc2
v1.8.5-rc3
v1.8.5.1
v1.8.5.2
v1.8.5.3
v1.8.5.4
v1.8.5.5
Анотированные метки
$ git tag -a v1.4 -m "my version 1.4"
$ git tag
v0.1
v1.3
v1.4
Просмотр метки всместе с коммитом
$ git show v1.4
tag v1.4
Tagger: Ben Straub <ben@straub.cc>
Date: Sat May 3 20:19:12 2014 -0700
my version 1.4
commit ca82a6dff817ec66f44342007202690a93763949
Author: Scott Chacon <schacon@gee-mail.com>
Date: Mon Mar 17 21:52:11 2008 -0700
Change version number
Посмотреть все метки и все аннотации
git tag -n
Легковесные метки
$ git tag v1.4-lw
$ git tag
v0.1
v1.3
v1.4
v1.4-lw
v1.5
$ git show v1.4-lw
commit ca82a6dff817ec66f44342007202690a93763949
Author: Scott Chacon <schacon@gee-mail.com>
Date: Mon Mar 17 21:52:11 2008 -0700
Change version number
Отправка меток
$ git push origin v1.5
Counting objects: 14, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (12/12), done.
Writing objects: 100% (14/14), 2.05 KiB | 0 bytes/s, done.
Total 14 (delta 3), reused 0 (delta 0)
To git@github.com:schacon/simplegit.git
* [new tag] v1.5 -> v1.5
$ git push origin --tags
Counting objects: 1, done.
Writing objects: 100% (1/1), 160 bytes | 0 bytes/s, done.
Total 1 (delta 0), reused 0 (delta 0)
To git@github.com:schacon/simplegit.git
* [new tag] v1.4 -> v1.4
* [new tag] v1.4-lw -> v1.4-lw
Удаление меток
$ git tag -d v1.4-lw
Deleted tag 'v1.4-lw' (was e7d5add)
С удаленного репозитория (метод №1)
$ git push origin :refs/tags/v1.4-lw
To /git@github.com:schacon/simplegit.git
- [deleted] v1.4-lw
С удаленного репозитория (метод №2)
$git push origin --delete <tagname>
Метки для конкретного коммита
git tag <tag_name> <commit_sha>
git tag -a <tag_name> <commit_sha> -m "message"
Просмотр всех коммитов с метками
git log --oneline
9127753 (HEAD -> master) Commit 3
f2fcb99 (feature) Commit 2
cab6e1b (origin/master) master : initial commit
Создание тегов для текущего или предыдущих коммитов
git tag <tag_name> HEAD # for the last commit
git tag -a <tag_name> HEAD -m "message"
git tag <tag_name> HEAD~1 # for the commit before HEAD
git tag <tag_name> HEAD~2 # for two commits before HEAD
Больше документации в списке [git]