2013-09-04 3 views
1

У меня вопрос, что я разрабатываю свое приложение в ветке, а затем, когда я это закончил, я объединил эту ветвь в моем хозяине. Я создаю тег из мастера.Могу ли я использовать git 'tag' при выпуске моего проекта?

на производственной среде, у меня есть это мое приложение git repository в моей рабочей области. , когда я выпускаю новую версию, могу ли я просто зайти в этот каталог, проверить тег, который я создал?

ps, ​​я думаю, что этот способ может работать, но следующее заставляет меня смутить.

$ git branch
* (no branch)
master

я не могу узнать, какой тег я использую на производственную среду, есть ли способ, чтобы показать, какие теги я использую?

ответ

0

Да, это как предполагается использовать. не забудьте нажать/вытащить теги, так как они не по умолчанию.

1

вы можете использовать git describe --abbrev=0 для отображения последнего тега от текущей фиксации.

Так что если у вас есть например

tag v1.00 
tag v1.01 
tag v1.02 
tag v2.00 

и вы git checkout v1.01, git describe --abbrev=0 приведет:

v1.01 
+0

Да, я думаю, 'git describe' может помочь мне получить информацию о текущей версии. и у меня есть другая идея: 'git archive' –

2

на производственной среде, у меня есть мое приложение репозиторий в моем рабочем пространстве. когда я выпускаю новую версию, могу ли я просто зайти в этот каталог, проверить тег Я создал?

Да и нет.

Git предполагает, что вы захотите сделать новую работу на основе текущей версии. Теги неизменяемы (неизменяемы), поэтому вы не можете выполнять новую работу с тегом. Поэтому то, что происходит, когда вы делаете

$ git checkout <tag> 

что Git проверяет состояние указанного тега и создает анонимную ветвь (так называемый «detached HEAD» в мерзавца документации) для вас, начиная с <tag>, и где вы можете создать новый Работа.

Вот почему вы видите (no branch) в git-branch выход:

$ git branch 
* (no branch) 
    master 

Понятие «отделенной Голову» IMVHO довольно хорошо объяснено (с диаграммами) в «Git concepts simplified», раздел «отделенной голова и все, что» где подробно описывается операция git checkout v1.0.


Я не могу узнать, какой тег я использую на производственную среду, есть ли способ отображения какой тег я использую?

Вы можете использовать git-describe, если вы используете аннотированные/подпись тег (созданные с помощью git tag -s или git tag -a), или git describe --tags, если вы используете легкие тег.

Например, вы получите

$ git describe 
<tag> 

, если вы прямо на метке.

+0

да, спасибо за ваши объяснения. –

Смежные вопросы