Skip to content
Snippets Groups Projects
Forked from Vincent MAZENOD / 2017-F2-Forge
Source project has a limited visibility.

Cours Forge ZZ2 F2 2017

Infos étudiant :

Par binôme Nom Prénom:

  • Mosnier Bastien
  • Drosne Denys

TP 1

Télécharger le sujet du TP à l'adresse suivante : https://gitlab.isima.fr/mazenovi/2017-F2-Forge

1. Les basiques

  1. Créer un repository git

     $ git init
     Initialized empty Git repository in D:/Users/basti/Documents/ISIMA_2017-2018/Conduite de projets web/Repository/.git/
  2. Par la suite pensez à commiter votre compte rendu apres chaques étapes dont l'enoncé est terminé par *, pour les messages de commit vous pouvez utiliser les numéros des questions (Ex Q1.2 ici)

  3. Ajouter le compte rendu dans le repo *

     $ git add tp1.md
     $ git commit -m "Q1.2"
     [master (root-commit) 3727ec6] Q1.2
     1 file changed, 163 insertions(+)
     create mode 100644 tp1.md
  4. Afficher la status de votre copie de travail

     $ git status
     On branch master
     nothing to commit, working tree clean
  5. Modifiez le CR pour supprimer la première partie et indiquez vos noms (n'oublier pas de faire un git add pour marque le fichier comme devant être ajouté) *

     $ git add tp1.md
     $ git commit -m "Q1.4"
     [master 39c080e] Q1.4
     1 file changed, 12 insertions(+), 85 deletions(-)
  6. Afficher l'historique de votre repo

     $ git log
     commit 39c080e06cf87be44c9e7a7c30249062fc4c60f7 (HEAD -> master)
     Author: BMosnier <bastienmosnier@gmail.com>
     Date:   Mon Jan 29 18:34:17 2018 +0100
    
         Q1.4
    
     commit 3727ec6379ed8f628a1206072f66bb92cdcf8290
     Author: BMosnier <bastienmosnier@gmail.com>
     Date:   Mon Jan 29 18:19:44 2018 +0100
    
         Q1.2
  7. Renommer ce fichier en préfixant avec vos noms en amendant le commit précédent (git commit -m "mon message" pour indiquer le mesage de commit directement) *

     $ git mv tp1.md MosnierDrosneTp1.md
     $ git add MosnierDrosneTp1.md
     $ git add tp1.md
     $ git commit --amend -m "Q1.6"
     [master e28861a] Q1.6
     Date: Mon Jan 29 18:34:17 2018 +0100
     2 files changed, 131 insertions(+), 85 deletions(-)
     create mode 100644 MosnierDrosneTp1.md
  8. Afficher l'historique de votre repo

     $ git log
     commit e28861ae16cb281c82cbdf34fe04f7f6ebde6a4f (HEAD -> master)
     Author: BMosnier <bastienmosnier@gmail.com>
     Date:   Mon Jan 29 18:34:17 2018 +0100
    
         Q1.6
    
     commit 3727ec6379ed8f628a1206072f66bb92cdcf8290
     Author: BMosnier <bastienmosnier@gmail.com>
     Date:   Mon Jan 29 18:19:44 2018 +0100
    
         Q1.2
  9. Il ne devrait y avoir que deux entrées dans l'historique pourquoi ? *

    Le git --amend ne rajoute pas un commit, il remplace le précédent

  10. Créer un nouveau fichier, nommé start, contenant la date et l'heure actuelle *

  11. Créer un nouveau fichier : file2ignore

  12. Afficher la status de votre copie de travail

  13. On souhaite que ce fichier soit ignoré et ne soit jamais commiter. Réalisez la configuration nécesaire pour que cette regle soit effective *

  14. Lister le contenu du repertoire courant, afficher le status et la log

  15. Avant de commiter affichez les modifications par rapport à la précédente révision ? *

2. Les branches
  1. Créez une branche portant votre nom et basculer sur cette branche (dans la suite du TP cette branche est désignée par mybranch)
  2. Lister les branches locales et les fichiers présent dans le répertoire courant *
  3. Aficher le status de votre repo *
  4. Créez une branche pour développer la réponse de ce point (nommez là mybranch-2.4 par exemple)
  5. Afficher un historique sous forme de graph (a dog) de votre repo
  6. Pourquoi les 2 branches pointent elles sur la même révision ?*
  7. Afficher à nouvea l'historique pour montrer les modifications suite au précédent commit *
  8. Revenir la brache mybranch
  9. Où sont passé vos reponces au point 2.4 ? *
  10. Affichez un historique sous forme de graph (a dog) de votre repo, Que peux ton en dire ?
  11. Revenir sur la branche master
  12. Ajoutez et commitez un fichier (touch new_file)
  13. Revenir sur votre branche mybranch pour completer le compte rendu *
  14. Affichez un historique sous forme de graph (a dog) de votre repo *
3. Merge
  1. Merge depuis head
  2. switcher sur une nouvelle branche mybranch-3.1
  3. ajout un nouveau fichier nommé easy_merge avec la date et l'heure actuelle *
  4. merger la branche mybranch-4.1 sur mybranch
  5. Afficher le status
  6. Pourquoi n'y a t'il aucune modification en cours ? *
  7. Affichez un historique sous forme de graph (a dog) de votre repo et décire l'état courant*
  8. Merge avec modifications
  9. Mergez les modifications de la branche mybranch-2.4 sur mybranch (*echap* :wq *enter* pour sauvegarder le message de commit et quitter)*
  10. Affichez un historique sous forme de graph (a dog) de votre repo *
  11. Merge avec conflit
  12. Céer une nouvelle branche mybranch-3.6
  13. Notez dans le CR la date et l'heure actuelle (avec la commande date par exemple) *
  14. Switchez sur la nouvelle branche et modifiez la réponse précendante dans le CR avec le *
  15. Réalisez le merge de la brache mybranch-3.6 sur mybranch. Le prompt change, pourquoi ? Gerer le conflit et commiter.
  16. Supprimer les branches de feature et afficher toutes les branches restantes, affichez un historique sous forme de graph (a dog) de votre repo *
4. Remote
  1. Afficher l'historique de votre repo
  2. Ajouter le projet "2017-F2-Forge" comme repository distant *
  3. Lister les branches distantes
  4. Pousser votre branche de votre repo local sur le repos distant *
  5. En consultant votre branche sous gitlab, vous devriez constaté que la date de modification du fichier start est plus acienne que celle de votre compte rendu, porquoi alors que le push de toute votre branche est faite en une seule fois ?
  6. Supprimer le dossier .git
  7. Faire un git status ?