Table des matières

D35 - TP1 - Premiers pas avec git

Pour une présentation rapide de Git lire : Git de base et Git avancé.

et surtout : https://www.atlassian.com/git/tutorials/comparing-workflows/

Git dans un entrepôt isolé

  1. Dans un répertoire TEST à la racine de votre compte:
    1. créer un dossier pour votre projet
    2. en faire un entrepôt Git
    3. Mettre en place un mini projet java qui contient une Classe Hello (le programme Hello World !) dans un paquetage fr.univtln.<votrelogin>
  2. A chaque modification afficher le statut
  3. Ajouter les différents fichiers (staging puis commit)
  4. Afficher le journal
  5. Modifier le fichier java et afficher les différences puis faire un commit.
  6. Créer une autre branche de votre projet et basculer vers cette branche.
  7. Ajouter des fichiers et faire des modifications dans la nouvelle branches.
  8. Revenir dans la branche initiale et récupérer les modifications.
  9. “Taguer” la version courante et continuer à faire des modifications.
  10. Faire un clone du projet à la version taguée.

Collaboration "Locale"

  1. Dans le répertoire ~/TEST cloner votre répertoire Git d’origine vers un répertoire “bare”
  2. Créer deux clone du répertoire “bare”
  3. Faire des modifications dans le premier et mettre à jour le second
  4. Faire l’inverse
  5. Faire des modifications dans le même fichier dans les deux projets sans pull préalable

pousser un puis l’autre pour provoquer un conflit et régler le conflit.

Collaboration "Distante"

  1. vous pouvez travailler en ligne sur github (vient le lien reçu “D35 TP1”) il s’agit d’un clone d’un entrepôt de base d’un projet java.
  2. Vous pouvez ajouter des remotes d’autres étudiants et s’ils vous donne les droits :
    1. Pousser vos modifications.
    2. Récupérer les modifications.
    3. Sinon faire des pull/request.
  1. A partir de là travailler tous ensemble sur le même projet :
    1. l’accès au repository commun est présenté dans le channel #d35 de slack.
    2. chacun peut créer une classe Test dans son propre paquetage (avec des login différents) avec une méthode String sayName() qui retourne son login.

Utilisation avancée

  1. Etudier les fonctions avancées de mise à jour de l’historique : http://git-scm.com/book/fr/Les-branches-avec-Git-Rebaser
  2. Mise en place de gitflow avec Java/Maven

IDE

  1. Tester le plugin Git dans eclipse et/ou dans IntelliJ Idea.
, ,