0. _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)_
0. Ajouter le compte rendu dans le repo `*`
$ git add tp1\ cpw.md
0. Afficher la status de votre copie de travail
$ git status
On branch master
nothing to commit, working tree clean
0. 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é) `*`
0. 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) `*`
| * 113376e (origin/BertoniWalczyszyn) derniere version 08/01
|/
* 8d09964 ajout .gitignore
* 39cc64e ajout fichier start
* 4773e48 modification du nom
* a95c3e0 premier ajout
0. Revenir la branche `mybranch`
$ git checkout BertoniWalczyszyn
Switched to branch 'BertoniWalczyszyn'
0. Où sont passées vos reponses au point 2.4 ? `*`
elles ont disparu
0. Affichez un historique sous forme de graph (`a dog`) de votre repo, Que peux ton en dire ?
0. Revenir sur la branche master
0. Ajoutez et commitez un fichier (touch new_file)
$ git commit -m "ajout new_file"
[master 5b03c92] ajout new_file
2 files changed, 60 insertions(+), 6 deletions(-)
create mode 100644 new_file
0. Revenir sur votre branche `mybranch` pour completer le compte rendu `*`
$ git checkout BertoniWalczyszyn
Switched to branch 'BertoniWalczyszyn'
0. Affichez un historique sous forme de graph (`a dog`) de votre repo `*`
$ git log --all --decorate --oneline --graph
* 5b03c92 (master) ajout new_file
| * 8e5667f (HEAD -> BertoniWalczyszyn) changement de branche
| * 65e4aff mise a jour rapport
| |\
| | * 52d300a (BW-2.4) changement de branche
| | * baf3847 creation branche BW-2.4
| |/
|/|
* | 52f744d 19h32
* | ae1b0d7 branche créée
| * 88533e1 derniere version
| * 113376e (origin/BertoniWalczyszyn) derniere version 08/01
|/
* 8d09964 ajout .gitignore
* 39cc64e ajout fichier start
* 4773e48 modification du nom
* a95c3e0 premier ajout
##### 3. Merge
0. Merge depuis head
0. switcher sur une nouvelle branche `mybranch-3.1`
$ git branch BW-3.1
$ git checkout BW-3.1
Switched to branch 'BW-3.1'
0. ajout un nouveau fichier nommé easy_merge avec la date et l'heure actuelle `*`
touch easy_merge.txt
echo "05/02/2018 18:06"> easy_merge.txt
$ git commit -m "ajout fichier easy_merge.txt"
[BW-3.1 3dd77e5] ajout fichier easy_merge.txt
1 file changed, 1 insertion(+)
create mode 100644 easy_merge.txt
0. merger la branche `mybranch-4.1` sur `mybranch`
$ git checkout master
Switched to branch 'master'
$ git merge BW-3.1
Auto-merging Bertoni Walczyszyn tp1 cpw.md
CONFLICT (content): Merge conflict in Bertoni Walczyszyn tp1 cpw.md
Automatic merge failed; fix conflicts and then commit the result.
0. Afficher le status
$ git status
On branch master
You have unmerged paths.
(fix conflicts and run "git commit")
(use "git merge --abort" to abort the merge)
Changes to be committed:
new file: easy_merge.txt
0. Pourquoi n'y a t'il aucune modification en cours ? `*`
Car tous les nouveaux fichiers ont été ajouter dans la branche 3.1 et un merge a été fait donc il ne sont plus a faire dans la branche master
0. Affichez un historique sous forme de graph (`a dog`) de votre repo et décire l'état courant`*`
```
$ git log --all --decorate --oneline --graph
* a88b6c0 (HEAD -> master) après merge avec BW-3.1
|\
| * bc42d8f (BW-3.1) changement de branche
| * 3dd77e5 ajout fichier easy_merge.txt
| * 9e1a11d (origin/BertoniWalczyszyn, BertoniWalczyszyn) dernier version 29/01
| * 8e5667f changement de branche
| * 65e4aff mise a jour rapport
| |\
| | * 52d300a (BW-2.4) changement de branche
| | * baf3847 creation branche BW-2.4
| * | 88533e1 derniere version
| * | 113376e derniere version 08/01
* | | 5b03c92 ajout new_file
| |/
|/|
* | 52f744d 19h32
* | ae1b0d7 branche créée
|/
* 8d09964 ajout .gitignore
* 39cc64e ajout fichier start
* 4773e48 modification du nom
* a95c3e0 premier ajout
La branche master est dans le même etat que la branche BW-3.1 puisque un merge a été fait (même si un commit a été fait pour ajouter les changement dans le rapport)
```
0. Merge avec modifications
0. Mergez les modifications de la branche `mybranch-2.4` sur `mybranch` (`*echap* :wq *enter*` pour sauvegarder le message de commit et quitter)`*`
$ git merge BW-2.4
Merge made by the 'recursive' strategy.
start.txt | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
0. Affichez un historique sous forme de graph (`a dog`) de votre repo `*`
```
* 51e7d1d (BW-3.6) gerge branch 'BW-2.4' into BertoniWalczyszyn
|\
| * b2b020d (BW-2.4) modif start.txt
| | * a88b6c0 (HEAD -> master) après merge avec BW-3.1
| | |\
| | | * bc42d8f (BW-3.1) changement de branche
| | | * 3dd77e5 ajout fichier easy_merge.txt
| |_|/
|/| |
* | | 9e1a11d (origin/BertoniWalczyszyn) dernier version 29/01
* | | 8e5667f changement de branche
* | | 65e4aff mise a jour rapport
|\ \ \
| |/ /
| * | 52d300a changement de branche
| * | baf3847 creation branche BW-2.4
* | | 88533e1 derniere version
* | | 113376e derniere version 08/01
| | * 5b03c92 ajout new_file
| |/
| * 52f744d 19h32
| * ae1b0d7 branche créée
|/
* 8d09964 ajout .gitignore
* 39cc64e ajout fichier start
* 4773e48 modification du nom
* a95c3e0 premier ajout
```
0. Merge avec conflit
0. Céer une nouvelle branche `mybranch-3.6`
$ git branch BW-3.6
0. Notez dans le CR la date et l'heure actuelle (avec la commande `date` par exemple) `
0. Switchez sur la nouvelle branche et modifiez la réponse précendante dans le CR avec le `*`
0. Réalisez le merge de la brache `mybranch-3.6` sur `mybranch`. Le prompt change, pourquoi ? Gerer le conflit et commiter.
0. 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
0. Afficher l'historique de votre repo
0. Ajouter le projet "2017-F2-Forge" comme repository distant `*`
0. 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 ?