Обновление май 2015
Начиная с GIT 2.4.1 , вы можете сделать
git config --global push.followTags true
Если установлено значение true, включить параметр --follow-tags по умолчанию. Вы можете переопределить эту конфигурацию во время отправки, указав --no-follow-tags.
Обновление от апреля 2013 года
Начиная с git 1.8.3 (22 апреля 2013 г.) , вам больше не нужно делать 2 команды, чтобы нажимать ветви, а затем нажимать теги :
Новая опция "--follow-tags
" указывает "git push
" на выдвигать соответствующие аннотированные теги при выталкивании ветвей .
Теперь вы можете попробовать при нажатии новых коммитов:
git push --follow-tags
Это не будет выдвигать все локальные теги, хотя, только тот, на который ссылаются коммиты, которые выдвигаются с помощью git push
.
Git 2.4.1+ (второй квартал 2015 года) представит опцию push.followTags
: см. « Как сделать так, чтобы« git push
»включал теги в ветку? ».
Оригинальный ответ, сентябрь 2010
Ядерная опция будет git push --mirror
, которая будет выдвигать все ссылки под refs/
.
Вы также можете вставить только один тег с вашей текущей фиксацией ветки:
git push origin : v1.0.0
Вы можете комбинировать опцию --tags
с refspec, например:
git push origin --tags :
(поскольку --tags
означает: все ссылки в refs/tags
выдвигаются, в дополнение к refspecs, явно указанным в командной строке )
У вас также есть эта запись " Нажатие веток и тегов с помощью одного вызова" git push ""
Полезный совет был только что отправлен в список рассылки Git автором Zoltán Füzesi:
Я использую .git/config
, чтобы решить это:
[remote "origin"]
url = ...
fetch = +refs/heads/*:refs/remotes/origin/*
push = +refs/heads/*
push = +refs/tags/*
С этими добавленными строками git push origin
загрузит все ваши ветки и теги. Если вы хотите загрузить только некоторые из них, вы можете перечислить их.
Сам еще не пробовал, но, похоже, это может быть полезно, пока в git push не будет добавлен какой-то другой способ одновременного добавления веток и тегов.
С другой стороны, я не против набрать:
$ git push && git push --tags
Остерегайтесь , а комментирует от Aseem Kishore
push = +refs/heads/*
будет принудительно толкнет все ваши ветви .
Это укусило меня только сейчас, так что, к вашему сведению.
Рене Шейбе добавляет этот интересный комментарий :
Параметр --follow-tags
вводит в заблуждение, так как рассматриваются только теги под .git/refs/tags
.
Если выполняется git gc
, теги перемещаются с .git/refs/tags
на .git/packed-refs
. После этого git push --follow-tags ...
больше не работает, как ожидалось.