J'obtiens l'erreur suivante après avoir exécuté les étapes ci-dessous :
To git@provider.com:username/repo-name.git
! [rejected] dev -> dev (already exists)
error: failed to push some refs to 'git@provider.com:username/repo-name.git'
hint: Updates were rejected because the tag already exists in the remote.
- Création du référentiel
- Cloner le repo sur la machine locale.
- Modifié le fichier README, commité les changements et poussé le commit.
- Balise créée
dev
:git tag dev
- Des tags poussés :
git push --tags
- Modifié le fichier README, commité les changements et poussé le commit.
-
Étiquette supprimée
dev
il l'a créé à nouveau et a poussé les tags :git tag -d dev git tag dev git push --tags
Pourquoi cela se produit-il ?
Je suis sur Mac. Mes amis qui utilisent Linux (Ubuntu) n'ont pas ce problème. Je sais que je peux utiliser git push --tags -f
pour forcer la mise à jour de la balise, mais cela est dangereux (par exemple, réécrire un commit fait par erreur uniquement dans la balise, pas dans la branche).
2 votes
Les commits ne sont pas faits "dans les tags" ou "dans les branches" (même si on a l'impression que c'est le cas). En fait, les noms des balises et des branches sont simplement pointer vers (un, unique) engagement. S
10 votes
Cela a fonctionné pour moi
git pull --tags
puisgit push origin --tags
0 votes
Voir aussi stackoverflow.com/questions/31929667/