depot_distant.md 5.4 KB


title: "Tutoriel git


introduction | installation | dépôt local | dépôt distant | branches | forks
" output:

toc: true


Dépôt distant (sauvegarder un projet sur un serveur)

Git permet de synchroniser un dépôt local avec un dépôt distant (sur un serveur). Il existe des serveurs comme github qui permettent d'héberger gratuitement des dépôts publics (visibles par tout le monde).

Le serveur gogs du SCOSI vous permet d'héberger des dépôts publics ou privés. Il dispose d'une page web vous permettant de gérer vos projets. Pour cela, allez à l'adresse https://gogs.univ-littoral.fr et entrez vos identifiants du portail ULCO :

Une fois identifié, le site vous affiche une page d'accueil (derniers commits, dépôts actifs...) :

Créer un dépôt sur un serveur git

Pour créer un nouveau dépôt distant, allez sur la page du serveur gogs et cliquez "New Repository".

Entrez le nom du dépôt distant à créer (évitez les espaces), puis cliquez "Create Repository".

Le dépôt distant est alors créé et une page vous indique comment le récupérer localement. Attention, il y a une méthode plus simple que celle indiquée (cf section suivante).

Créer un dépôt local à partir d'un dépôt distant

La commande git clone ... permet de récupérer un dépôt distant sur votre machine (cf image ci-dessous). Pensez à mettre votre login après le "https://".

Ajouter un dépôt local à un dépôt distant

Si vous avez déjà créé et modifié un dépôt local, vous pouvez le synchroniser avec un dépôt distant en utilisant les commandes git remote add origin ... puis git push -u origin master. Sinon, utilisez plutôt la méthode de la section précédente.

Récupérer les commits d'un dépôt distant

La commande git pull permet de récupérer les éventuelles modifications sur le serveur et de les intégrer dans votre dépôt local.

Envoyer les commits locaux sur un dépôt distant

La commande git push permet d'envoyer vos commits locaux sur le serveur.

Les commits/fichiers envoyés sur le serveur sont alors visibles sur la page web.

Vous pouvez également toujours voir le contenu de votre dépôt avec un client graphique.

Résoudre des conflits

Imaginez que vous avez modifié et commité un fichier, et que vous voulez l'envoyer sur le serveur. Pour cela, il faut d'abord faire un git pull avant le git push au cas où l'un de vos collaborateurs aurait envoyer une modification sur le serveur entre temps.

Si des modifications ont été faites en parallèle, git est souvent capable de les fusionner mais parfois il n'arrive pas à résoudre le conflit et il vous demande de le faire manuellement.

Pour résoudre un conflit, il suffit d'ouvrir le fichier en cause et de remplacez les zones marquées par le contenu que vous voulez obtenir. Il existe des outils graphiques comme meld qui peuvent vous y aider.

Une fois les conflits édités, vous pouvez commiter et pusher vers le serveur.

Résumé et méthode de travail

Résumé des commandes git précédentes :

---|---| git clone | récupère un dépôt distant | git pull | récupère les modifications du dépôt distant et les intègre dans le dépôt local | git push | envoie les commits du dépôt local sur le dépôt distant |

Quelques conseils de méthode de travail :

  • utilisez la page https://gogs.univ-littoral.fr pour créer et gérer vos dépôts distants.
  • récupérez vos nouveaux dépôts distant avec git clone
  • récupérez les modifications du serveur avec git pull
  • faites un git pull avant d'envoyer vos nouveaux commits sur le serveur (git push)

Exercice

TODO


Branches (travailler en équipe)

TODO

Afficher les branches

git log --graph --all --oneline --decorate

Créer une nouvelle branche locale

Changer de branche

Fusionner des branches

Envoyer une branche sur un dépôt distant

Afficher les branches distantes

Terminer une branche locale

Terminer une branche distante

Supprimer un commit déjà pushé (DANGER !!!)

git reset --hard e6c8e8e git push origin HEAD:master -f git reset --hard e6c8e8e

Résumé et méthode de travail

Résumé des commandes git précédentes :

---|---| git | |

Quelques conseils de méthode de travail :

  • TODO

Exercice

TODO


Retour au début de la page

Retour à la page d'accueil

Dernière mise à jour : 2016-03-05