Travailler avec un Dépôt Distant¶
Toutes les modifications que vous avez apportées jusqu'à présent ont été enregistrées localement sur votre ordinateur. Pour collaborer avec d'autres personnes et partager votre travail, vous devez travailler avec un dépôt distant, comme GitHub.
1. Lier votre dépôt local à un dépôt distant¶
Dans la tâche précédente, vous avez créé un dépôt distant sur GitHub. Vous allez maintenant lier votre dépôt local à ce dépôt distant.
-
Ajoutez l'URL du dépôt distant à votre dépôt local en utilisant la commande
remote add.Comment trouver l'URL de votre dépôt ?
-
Si le dépôt distant est vide, vous verrez un encadré bleu affichant une URL HTTPS ou SSH.
-
Si le dépôt contient déjà des fichiers, un bouton vert sera visible en haut à droite. Cliquez sur ce bouton ( Code ) et copiez l'URL affichée.
HTTPS ou SSH ?
-
HTTPS : si vous optez pour HTTPS, vous devrez saisir votre nom d'utilisateur et votre mot de passe à chaque opération d'envoi (le mot de passe est un jeton d'accès personnel que vous pouvez générer sur GitHub).
-
SSH : si vous choisissez SSH, vous devrez configurer une clé SSH.
Pour plus d'informations sur la configuration de clés SSH ou la génération de jetons d'accès personnels, consultez la section Se connecter à GitHub dans la page "Préparation de votre environnement de développement".
Recommandation : si vous utilisez des ordinateurs publics, il est préférable d'utiliser HTTPS.
-
-
Vérifier que le dépôt distant a été ajouté avec succès, utilisez la commande
remote.L'URL de votre dépôt distant devrait s'afficher. Le nom par défaut attribué à un dépôt distant est
origin, mais vous pouvez le modifier si vous le souhaitez. Notez que cette URL est affichée deux fois : une pour la récupération des données (fetch) et l'autre pour l'envoi (push).
2. Pousser vos modifications¶
Pour envoyer vos modifications locales vers le dépôt distant, vous devez effectuer un push. Lors de votre premier envoi, il est nécessaire d'établir une relation de suivi entre votre branche locale et la branche distante. Utilisez pour cela l'option -u ou --set-upstream. Cette action permet à Git de gérer automatiquement les opérations de push et de pull ultérieures entre les deux branches.
-
Pousser vos modifications locales vers le dépôt distant :
Astuce
Vous pouvez également utiliser la commande
git pushsans les options-uou--set-upstreampour les envois ultérieurs.Envoi refusé
Si vous rencontrez une erreur lors de l'envoi de vos modifications, cela est probablement dû à l'une des raisons suivantes :
-
Problème d'autorisations : Vous ne possédez peut-être pas les autorisations nécessaires pour effectuer un envoi vers le dépôt distant. Vérifiez que votre clé SSH est correctement configurée ou que vous avez généré un jeton d'accès personnel avec les permissions adéquates (assurez-vous que la case repo est cochée).
-
Dépôt distant non vide (dans notre cas) : Si le dépôt distant n'est pas vide, vous devez d'abord intégrer les modifications présentes sur celui-ci dans votre branche locale en utilisant la commande
git pull.
-
-
Pour vérifier que vos modifications ont été envoyées avec succès, rendez-vous sur la page de votre dépôt sur GitHub. Vous pouvez également vérifier l'état de votre dépôt local en utilisant la commande suivante :
Le dernier commit que vous avez effectué et qui est maintenant présent sur le dépôt distant devrait alors s'afficher (
HEAD -> main,origin/main).
3. Récupérer des modifications¶
Bien que vous soyez actuellement le seul à travailler sur votre dépôt, il est important de savoir comment gérer les contributions d'autres personnes, le travail sur plusieurs ordinateurs ou les modifications effectuées directement sur le dépôt distant. Pour maintenir votre dépôt local à jour, vous devez récupérer ces modifications à l'aide de la commande git pull. Cette commande permet de télécharger les modifications du dépôt distant et de les intégrer à votre branche locale.
À propos de la commande pull
La commande pull est en fait une combinaison de deux commandes : fetch et merge. La commande fetch récupère les modifications du dépôt distant sans les fusionner avec votre branche locale, tandis que la commande merge fusionne ces modifications avec votre branche locale. (Voir Aide-mémoire Git pour plus de détails.)
-
Pour tester cette fonctionnalité, effectuez une modification sur votre dépôt distant en modifiant le fichier
README.mddirectement sur GitHub de la branchemain. Ajoutez une ligne de texte, puis enregistrez les modifications en créant un nouveau commit sur GitHub. -
Récupérez ces modifications sur votre dépôt local en utilisant la commande
pull. -
Vérifiez que les modifications ont été récupérées avec succès en utilisant la commande
log.La dernière modification que vous avez effectuée sur le dépôt distant devrait maintenant s'afficher dans votre historique de commits.
Conflits de fusion
Pour éviter les conflits lors de la fusion des modifications, il est recommandé de toujours récupérer les modifications du dépôt distant avant de commencer à travailler sur votre branche locale.