À quoi sert le paramètre -u lors d'un git push ?

Dans la majorité des documentation, on peut lire la commande "git push -u origin master", mais quelle est l'utilité de ce paramètre ?

Article publié le 28/03/2022, dernière mise à jour le 19/09/2023

Si vous avez déjà lu de la documentation, des tutoriels ou des cours sur Git pour apprendre à pousser votre code sur un dépôt distant, alors vous avez sûrement vu cette commande quelque part :

git push -u origin master

Vous devez être habitué.e à la commande push, mais vous aurez aussi sûrement remarqué ce paramètre -u souvent présent et pourtant optionnel.

Alors pourquoi doit-on l'ajouter ? Quand le faire et surtout quelle est sont utilité ? C'est ce que nous allons voir dans cet article.

Un paramètre optionnel mais recommandé

Commençons d'abord par la signification de ce paramètre qui est en réalité un paramètre raccourci.

"-u" remplace le paramètre "--set-upstream" lors de l'appel à la  commande git push, sans aucun changement entre les deux paramètres.

Que signifie "set-upstream" ?

Lorsque l'on pousse les modifications d'un dépôt local vers un dépôt  distant, Git ne peut pas deviner que votre branche locale souhaite être  liée par défaut avec une branche en particulier.

Cette branche distante, avec laquelle vous pouvez "lier" votre branche locale, c'est ce qu'on appelle "l'upstream".

Est-il possible de travailler sans upstream ? La réponse est : oui. Néanmoins cela ne vous facilite pas la tâche.

Que signifie lier une branche ?

Définir un upstream pour votre actuelle signifie simplement que vous  n'aurez pas à indiquer le nom de la branche souhaitée à chaque fois que  vous voudrez faire un git pull ou un git push.

C'est pour cela qu'il est conseillé d'utiliser le paramètre -u lorsque  vous poussez une nouvelle branche sur votre dépôt distant :

git push -u origin branch
# vous pourrez ensuite simplement faire
git push origin
# ou
git pull origin
# sans spécifier la branche !

Ashley Jurius sur Unsplash

Vous avez terminé l'article ?

Commentaires (0)

pour laisser un commentaire

Aucun commentaire pour l'instant