Как нажать тег на удаленный repository с помощью Git?

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

git tag mytag master 

Когда я запускаю git tag на своем ноутбуке, mytag тег mytag . Затем я хочу нажать это в удаленный repository, поэтому у меня есть этот тег для всех моих клиентов, поэтому я запускаю git push но я получил сообщение:

Все актуальное

И если я иду на свой рабочий стол и запускаю git pull а затем git tag tags не показываются.

Я также попытался внести незначительные изменения в файл в проекте, а затем направить его на сервер. После этого я мог бы вытащить изменения с сервера на настольный компьютер, но при запуске git tag на моем настольном компьютере по-прежнему нет тега.

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

Чтобы нажать один тег:

 git push origin  

И следующая команда должна нажать все tags (не рекомендуется):

 git push --tags 

git push --follow-tags

Это разумный вариант, введенный в Git 1.8.3:

 git push --follow-tags 

Он подталкивает как коммиты, так и tags, которые оба:

  • аннотированный
  • достижимый (предок) от подталкиваемых коммитов

Это разумно, потому что:

  • вы должны только нажимать аннотированные tags на удаленный компьютер и хранить легкие tags для локальной разработки, чтобы избежать столкновений тегов. См. Также: В чем разница между аннотированным и неаннотированным тегом?
  • он не будет нажимать аннотированные tags на несвязанные ветви

Именно по этим причинам следует избегать --tags .

Git 2.4 добавила опцию push.followTags чтобы по умолчанию включить этот флаг, который вы можете установить с помощью:

 git config --global push.followTags true 

Чтобы нажать конкретный, один тег следует за git push origin tag_name

Чтобы расширить ответ Тревора , вы можете одновременно нажать один тег или все ваши tags.

Нажать один тег

 git push   

Это резюме соответствующей документации, которая объясняет это (некоторые опции команды опущены для краткости):

 git push [[ […]] ... 

Формат параметра – это … источник ref , за которым следует двоеточие : а затем пункт назначения ref

сообщает, какой ref на удаленной стороне обновляется этим нажатием … Если : опущен, будет обновлен тот же ref, что и

тег означает то же самое, что и refs/tags/:refs/tags/ .

Нажимайте все свои tags сразу

 git push --tags  # Or git push  --tags 

Ниже приведен краткий обзор соответствующей документации (некоторые опции команды опущены для краткости):

 git push [--all | --mirror | --tags] [ […]] --tags 

Все ссылки на refs/tags помещаются в дополнение к refspecs, явно указанным в командной строке.

Вы можете нажать tags, как этот git push --tags

Теги не отправляются в удаленный repository командой git push. Нам нужно явно отправить эти tags на удаленный сервер, используя следующую команду:

 git push origin  

Мы можем нажать все tags сразу, используя следующую команду:

 git push origin --tags 

Вот некоторые ресурсы для полной информации о тегах git:

http://www.cubearticle.com/articles/more/git/git-tag

http://wptheming.com/2011/04/add-remove-github-tags

Вы можете нажимать свои локальные tags командой git push --tags .

 $ git tag # see tag lists $ git push origin  # push a single tag $ git push --tags # push all local tags 

Я использую git push tag чтобы убедиться, что я git push tag тег. Я использую его как: git push origin tag v1.0.1 . Этот шаблон основан на документации ( man git-push ):

 OPTIONS ... ... ... tag  means the same as refs/tags/:refs/tags/. 

Не используйте его, если вы ищете только команду, потому что основная цель этого решения – представить вам способ решения!

Чтобы облегчить жизнь – я написал скрипт git-cheat-sheet , содержащий несколько полезных команд, в том числе следующее:

./git_commands.sh -push_tag TAG_NAME

Если вы работаете в филиале:

 git push --tags origin branch_name 
Interesting Posts

Получить содержание uri из пути к файлу в android

Программно добавить один вид ниже другого в относительной компоновке

Я получаю красную полосу при попытке установить Windows 7 DVD, и она зависает

Копирование файлов в папку приложения во время компиляции

Как я могу отобразить видеоstream RTSP на веб-странице?

YouTube не работает через прокси-сервер SSH-туннеля на IP-адрес в США

Перенести документ Excel в отдельное окно

Отключение обновлений окон для Windows 10

FFmpeg аудио и видео не синхронизированы

В чем разница между Float: left vs Display: inline? Хотя каждый элемент браузера по умолчанию остается слева

Как сделать вызов веб-службы SOAP из classа Java?

Получить разрешение экрана с помощью WMI / powershell в Windows 7

Какой лучший ответ для: «мой Интернет не работает»?

Могут ли файлы истории объединяться в bash?

Как форматировать строку в письме, чтобы Outlook распечатывал разрывы строк?

Давайте будем гением компьютера.