Vraag Hoe een tag naar een externe repository te duwen met Git?


Ik heb een externe Git-repository naar mijn laptop gekloond, daarna wilde ik een tag toevoegen, zodat ik rende

git tag mytag master

Wanneer ik ren git tag op mijn laptop de tag mytag wordt getoond. Ik wil dit dan naar de externe repository duwen, dus ik heb deze tag op al mijn clients, dus ik runt git push maar ik kreeg de boodschap:

Alles actueel

En als ik naar mijn bureaublad ga en ren git pull en dan git tag er worden geen tags getoond.

Ik heb ook geprobeerd een kleine wijziging in een bestand in het project aan te brengen en het vervolgens naar de server te pushen. Daarna kon ik de wijziging van de server naar mijn desktopcomputer doorvoeren, maar er is nog steeds geen tag tijdens het uitvoeren git tag op mijn computer.

Hoe kan ik mijn tag naar de externe repository duwen zodat alle clientcomputers deze kunnen zien?


1543
2018-03-04 15:37


oorsprong


antwoorden:


Duwen single label:

git push origin <tag_name>

En de volgende opdracht zou moeten pushen alle tags (niet aanbevolen):

git push --tags

2458
2018-03-04 15:40



git push --follow-tags

Dit is een gezonde optie geïntroduceerd in Git 1.8.3:

git push --follow-tags

Het duwt zowel commits als alleen tags die beide zijn:

  • geannoteerde
  • bereikbaar (een voorouder) van de geduwde commits

Dit is gezond omdat:

Het is om die redenen dat --tags moet worden vermeden.

Git 2.4 heeft toegevoegd de push.followTags optie om die vlag standaard in te schakelen, die u kunt instellen met:

git config --global push.followTags true

695
2017-10-18 09:12



Om specifiek te pushen, doet één tag het volgende git push origin tag_name


228
2017-10-24 14:43



Om verder te gaan Trevor's antwoord, je kunt op één enkele tag of op je hele tag drukken tags tegelijk.

Druk op een enkele tag

git push <remote> <tag>

Dit is een samenvatting van de relevante documentatie dat verklaart dit (sommige commando-opties weggelaten voor beknoptheid):

git push [[<repository> [<refspec>…]]

<refspec>...

Het formaat van een <refspec> parameter is ... de bron ref <src>,   gevolgd door een dubbele punt :, gevolgd door de bestemmingsreferentie <dst>...

De <dst> vertelt welke ref aan de andere kant hiermee wordt bijgewerkt   duwen ... Als :<dst> is weggelaten, dezelfde ref als <src> zal zijn   bijgewerkt ...

label <tag> betekent hetzelfde als refs/tags/<tag>:refs/tags/<tag>.

Duw al uw tags tegelijk

git push --tags <remote>
# Or
git push <remote> --tags

Hier is een samenvatting van de relevante documentatie (sommige commando-opties weggelaten voor beknoptheid):

git push [--all | --mirror | --tags] [<repository> [<refspec>…]]

--tags

Alle refs onder refs/tags worden in aanvulling op refspecs expliciet ingedrukt   vermeld op de opdrachtregel.


74
2018-04-22 10:52



Je kunt de tags zo pushen git push --tags


41
2018-03-04 15:40



Tags worden niet naar de externe repository verzonden met de opdracht git push. We moeten deze tags expliciet naar de externe server verzenden met behulp van de volgende opdracht:

git push origin <tagname>

We kunnen alle tags in één keer pushen door het onderstaande commando te gebruiken:

git push origin --tags

Hier zijn enkele bronnen voor volledige details over git-tagging:

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

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


38
2018-01-10 05:57



U kunt eenvoudig uw lokale tags pushen git push --tags opdracht.

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

13
2017-11-25 08:15