Ich habe gelesen , Git Verzweigen und Markieren Best Practices und git Tagging Kommentare - Best Practices , aber ich habe keine direkte Antwort auf etwas , sehe ich für eine lange Zeit gefragt haben:
Warum hat Git Tags? (statt nur Zweige)
Sie scheinen Bürger zweiter Klasse zu sein oder zumindest "anders". Sie werden nicht gepusht, es sei denn, Sie geben dies explizit an. Das Löschen von Remote-Tags führt nicht zum Löschen in nachgeschalteten Repos.
Dieser letzte Punkt war kürzlich ein Problem, als jemand eine Reihe von Mülletiketten mit Tonnen von Commits von einem anderen Repo schob. Wir könnten sie stromaufwärts löschen und die Commits überprüfen, aber das würde sich nicht verbreiten, und wenn jemand das nächste Mal ein Tag mit schob git push --tags
, würden sie diese Müll-Tags und Commits zurückweisen. Also mussten wir sicherstellen, dass alle sie löschten.
Wann und warum sollte ich ein Tag anstelle eines Zweigs verwenden?