Мы новичок в Git, и я хочу установить метку в начале нашего репозитория. Наша продукция код такой же, как и в начале репозитория, но мы'ве сделали совершает с тех пор. Тег в начале позволило бы нам, чтобы "туда-то" У производства в известное, стабильное состояние.
Так как добавить тег к произвольным, старше совершал?
Пример:
git tag -a v1.2 9fceb02 -m "Message here"
Где 9fceb02-это начало совершения ИД.
Затем вы можете нажать на тег с помощью Git толчок происхождение В1.2
.
Вы можете сделать журнале Git
, чтобы показать все совершают ИД's в вашей текущей веткой.
Есть также хорошая глава о тегов в книге про ГИТ.
Предупреждение: это создает теги с текущая дата (и это значение было что показать на GitHub релизы страницы, например). Если вы хотите, чтобы тег иметь дату фиксации, пожалуйста, посмотрите на один ответ.
# Set the HEAD to the old commit that we want to tag
git checkout 9fceb02
# temporarily set the date to the date of the HEAD commit, and add the tag
GIT_COMMITTER_DATE="$(git show --format=%aD | head -1)" \
git tag -a v1.2 -m"v1.2"
# set HEAD back to whatever you want it to be
git checkout master
Детали ###
Ответ по @dkinzer создает теги, дата которых является текущая дата (при запуске команды тег в Git
), не дату совершения. Git в помощь метки
раздел _"на Теги задним числом" и_, в котором говорится:
If вы импортировали некоторые изменения из другой VCS и хотел бы добавить теги для крупных релизов вашей работы, это полезно, чтобы иметь возможность указать дату размещения внутри тега Object; такие данные в теге объекта влияет, например, на заказ теги в gitweb будет интерфейс.
_To установить дату использоваться в будущем маркировать объекты, установить переменную окружения
GIT_COMMITTER_DATE
(см. ниже обсуждение возможных значений; наиболее распространенной формой является "гггг-ММ-ДД чч:мм:" с)._
пример типов:_
и GT; $ GIT_COMMITTER_DATE="от 2006-10-02 10:31" и в Git тег -С В1.0.1
Страница "Как получить тег в Git" показывает нам, что мы можем извлечь время из головы совершают через:
git show --format=%aD | head -1
#=> Wed, 12 Feb 2014 12:36:47 -0700
Мы могли бы извлечь дату из определенного совершить через:
GIT_COMMITTER_DATE="$(git show 9fceb02 --format=%aD | head -1)" \
git tag -a v1.2 9fceb02 -m "v1.2"
Однако вместо того, чтобы дважды повторять фиксации, мне кажется проще просто поменять голову на этот коммит и использовать его неявно в обе команды:
git checkout 9fceb02
GIT_COMMITTER_DATE="$(git show --format=%aD | head -1)" git tag -a v1.2 -m "v1.2"
Самый простой способ сделать это
тег в Git версии v1.0.0 f4ba1fc`
с f4ba1fcначало хэш коммита, который вы хотите таг и В1.0.0
версию вы хотите поставить метку.
Используйте команду:
git tag v1.0 ec32d32
Где v1.0-это имя тега и ec32d32 является фиксация вы хотите теге
После этого вы можете нажать на теги:
git push origin --tags
Ссылка:
В Git (система контроля версий): как я могу пометить конкретные предыдущей точки фиксации на GitHub?
ОК, Вы можете просто сделать:
git tag -a <tag> <commit-hash>
Так что если вы хотите добавить тег: 1.0.2 для совершения e50f795
, просто делать:
git tag -a 1.0.2 e50f795
Тоже вы добавить сообщение в конце, используя -м
, что-то вроде этого:
git tag -a 1.0.2 e50f795 -m "my message"
В конце концов, вы должны подтолкнуть ее к "удаленным", чтобы сделать это, просто выполните:
git push origin 1.0.2
Если у вас есть много тегов, которые вы не'т хотим, чтобы упомянуть их по одному, просто делать:
git push origin --tags
чтобы сдвинуть все теги...
Кроме того, я создал шагов на рисунке ниже, для лучшего понимания шаги:
</БР> Вы можете также ДД тег в концентратор или используя инструменты, такие как конечно, чтобы избежать предыдущие шаги, я вошел в мой оба в таком случае и делать это оттуда:
Нет теги
и нажмите на значок+
:Это старый вопрос, и ответы уже даны, все работает, но там's также добавлена новая опция, которая может быть и речи.
Если вы're, используя программа для управления репозиториями Git, вы можете щелкнуть правой кнопкой мыши на любой коммит и добавить тег к нему. С другой щелчок мышью, вы также можете отправить тег прямо в ветку о происхождении.
Опираясь на ответы других, вот один-лайнер решение, которое устанавливает дату тег, когда это произошло на самом деле, использует аннотированный тег и не требует никаких ГИТ кассе
:
tag="v0.1.3" commit="8f33a878" bash -c 'GIT_COMMITTER_DATE="$(git show --format=%aD $commit)" git tag -a $tag -m $tag $commit'
git push --tags origin master
где тег
устанавливается нужный строковый тег, и обязательства
для фиксации хэш.
Ответ на @Phrogz-это здорово, но не'работает на Windows. Здесь's, как помечать старый фиксацией с фиксацией'с первоначальной даты при помощи PowerShell.
яз-в PowerShell ГИТ кассе 9fceb02 $env:в GIT_COMMITTER_DATE = ГИТ шоу-формат=%объявление | выбрать первые 1 тег в Git версии v1.2 ГИТ выезд мастера