Git - Операция с тегом

Операция с тегами позволяет дать осмысленные имена конкретной версии в репозитории. Предположим, Том и Джерри решили пометить код своего проекта, чтобы впоследствии легко получить к нему доступ.

Создать теги

Давайте пометим текущий HEAD, используя git tagкоманда. Том предоставляет имя тега с параметром -a и предоставляет сообщение тега с параметром –m.

tom@CentOS project]$ pwd
/home/tom/top_repo/project

[tom@CentOS project]$ git tag -a 'Release_1_0' -m 'Tagged basic string operation code' HEAD

Если вы хотите пометить конкретную фиксацию, используйте соответствующий идентификатор COMMIT вместо указателя HEAD. Том использует следующую команду, чтобы поместить тег в удаленный репозиторий.

[tom@CentOS project]$ git push origin tag Release_1_0

Приведенная выше команда даст следующий результат -

Counting objects: 1, done.
Writing objects: 100% (1/1), 183 bytes, done.
Total 1 (delta 0), reused 0 (delta 0)
To [email protected]:project.git
* [new tag]
Release_1_0 −> Release_1_0

Просмотр тегов

Том создал теги. Теперь Джерри может просмотреть все доступные теги, используя команду Git tag с параметром –l.

[jerry@CentOS src]$ pwd
/home/jerry/jerry_repo/project/src

[jerry@CentOS src]$ git pull
remote: Counting objects: 1, done.
remote: Total 1 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (1/1), done.
From git.server.com:project
* [new tag]
Release_1_0 −> Release_1_0
Current branch master is up to date.

[jerry@CentOS src]$ git tag -l
Release_1_0

Джерри использует команду Git show, за которой следует имя тега, чтобы просмотреть дополнительные сведения о теге.

[jerry@CentOS src]$ git show Release_1_0

Приведенная выше команда даст следующий результат -

tag Release_1_0
Tagger: Tom Cat <[email protected]>
Date: Wed Sep 11 13:45:54 2013 +0530

Tagged basic string operation code


commit 577647211ed44fe2ae479427a0668a4f12ed71a1
Author: Tom Cat <[email protected]>
Date: Wed Sep 11 10:21:20 2013 +0530

Removed executable binary

diff --git a/src/string_operations b/src/string_operations
deleted file mode 100755
index 654004b..0000000
Binary files a/src/string_operations and /dev/null differ

Удалить теги

Том использует следующую команду для удаления тегов как из локального, так и из удаленного репозитория.

[tom@CentOS project]$ git tag
Release_1_0

[tom@CentOS project]$ git tag -d Release_1_0
Deleted tag 'Release_1_0' (was 0f81ff4)
# Remove tag from remote repository.

[tom@CentOS project]$ git push origin :Release_1_0
To [email protected]:project.git
- [deleted]
Release_1_0