Skip to content

Commit

Permalink
Initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
ThomasEcalle committed Jan 5, 2020
1 parent 23979b7 commit 6ea5987
Show file tree
Hide file tree
Showing 2 changed files with 176 additions and 2 deletions.
160 changes: 158 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,158 @@
# git_tp_final
TP final de cours d'initiation à GIT / Github
# TP final de Git

## Explication du TP

Bienvenue sur le README du TP final de votre cours d'initiation à Git et Github !

Ce README est le seul et unique énoncé dont vous avez besoin pour réaliser le TP.
Prenez donc bien soin de le comprendre et de le lire **attentivement**.

Voici les règles de base :

* Il est primordial de réaliser les exercices **dans l'ordre**.
* Tout le monde doit avoir un compte Github
* Mettez-vous par groupe de 3

### Exercice 1 : Forkez moi ça !

Le **fork** est une action permettant de copier un dépôt Github entièrement (avec tout son historique) sur son propre compte Github. Ainsi, vous pouvez copier mon dépôt et faire des changements sur la copie sans affecter le mien.

Vous êtes en groupe, il n'y aura donc qu'un seul d'entre-vous qui devra **forker** le dépôt.
Décidez entre vous qui ce sera, mais ça n'aura pas d'importance pour la suite.

Le premier exercice consiste donc à **forker** mon dépôt sur l'un des votre, peu importe lequel.

Pour savoir comment forker, lisez ceci : [savoir comment forker](www.google.com)

> Pour la suite du TP, vous devrez travailler en équipe sur le dépôt, n'oubliez pas de vous ajouter en tant que collaborateurs !
> Pour ceux qui ne savent plus comment faire, voici un rappel de la démarche : [ajouter des collaborateurs à mon dépôt github](www.google.com).
### Exercice 2 : Présentez-vous !

Dans ce second exercice, vous allez modifier les lignes qui suivent dans le README.md et présenter votre équipe (nom de famille et prénom) ainsi que la date du jour du TP.

> Ce sont ces informations qui me permettront de vous noter, si vous ne vous présentez pas ici, je ne pourrais pas vous noter :)
Noms des étudiants :
* Nom Prénom
* Nom Prénom
* Nom Prénom

Date du jour : 00/00/0000

Tout est ok ?
Faites donc un **commit** et **pushez** moi tout ça sur master (sur **votre** dépôt donc, puisque vous l'avez forker).

> N'importe lequel des collaborateurs peut pusher !
### Exercice 4 : Travail d'équipe !

Pour cet exercice, je vais appeler les collaborateurs :
* collaborateur 1
* collaborateur 2
* collaborateur 3

selon l'ordre dans lequel vous avez mis vos noms dans la présentation.

>(Si vous n'êtes pas un groupe de 3 mais inférieur, la logique est la même mais l'un d'entre vous fera les tâches des manquants :) )

Il est attendu de tous les collaborateurs de respecter les bonnes pratiques Git et de séparer au mieux leur travail en de multiples petits commits **pertinents** **La note prendra compte de cela** !

Toutes les missions peuvent être évidemment réalisées en parallèle par les collaborateurs.

#### Mission collaborateur 1 :

Le **collaborateur 1** est missionné par le client pour ajouter un peu de gaïté au site très morose.

Il va devoir effectuer **tout son travail** sur une branche nommée **"feature/collab-1"**.

Le **collaborateur 1** devra :
* ajouter un fichier de style CSS **styles.css** et de le lier au fichier **index.html** du projet. (Ce fichier doit donc être **versionné** !)
* Mettre le titre **h1** en rouge
* Mettre le titre **h2** en vert
* Mettre une liste numérotée plutôt que par points (**ol** à la place de **ul**)

Une fois que le **collaborateur 1** estime que tout son travail est fini, il peut **push** sa branche sur le dépôt distant.

#### Mission collaborateur 2 :

Le **collaborateur 2** est missionné par le client pour ajouter des informations au site actuel.

Il va devoir effectuer **tout son travail** sur une branche nommée **"feature/collab-2"**.

Le **collaborateur 2** devra :

* Ajouter une ligne d'information `Prof de git: Thomas Ecalle` où il le souhaite dans la liste déjà présente
* Ajouter une courte description sous chaque élément de la liste (ça peut être complètement Random, je ne juge pas vos talents d'écrivains hors pairs).

Côté HTML, ça peu têtre simplement quelque chose comme :

```
<li>Mon élément</li>
Ma superbe description
```
Une fois que le **collaborateur 2** estime que tout son travail est fini, il peut **push** sa branche sur le dépôt distant.

#### Mission collaborateur 3 :

Le **collaborateur 3** est missionné par le client pour corriger des erreurs qui se sont glissées sur le site actuel.

Il va devoir effectuer **tout son travail** sur une branche nommée **"feature/collab-3"**.

Le **collaborateur 3** devra :

* Corriger la faute sur le titre **h2**
* Corriger la faute dans l'adresse
* Corriger la faute dans le nom du directeur

Une fois que le **collaborateur 3** estime que tout son travail est fini, il peut **push** sa branche sur le dépôt distant.

### Exercice 5 : Fuuuuuuusion !

Nous approchons de la fin de cet incroyable TP :)

A ce stade, vous devriez avoir 4 branches sur votre dépôt :

* **Master** avec votre commit de présentation
* **feature/collab-1** avec le travail du collaborateur 1
* **feature/collab-2** avec le travail du collaborateur 2
* **feature/collab-3** avec le travail du collaborateur 3

Nous allons désormais fusionner l'ensemble des **features** sur la branche **master**.

Pour ce faire, nous utiliserons **TOUJOURS** la méthode du **Merge non-fast-forward**
Je veux en effet être capable de voir vos branches et le travail de fusion effectué !

> N'oubliez donc pas de **forcer** le *non fast-forward* comme appris dans le cours !

> N'importe lequel des collaborateurs peut s'occuper des fusions, je pars du principe que les 3 y participent.
Les fusions doivent se faire dans l'ordre suivant :

#### 1ère fusion :

Fusionnez la branche **feature/collab-3** sur la branche **master**.

#### 2ème fusion :

Fusionnez la branche **feature/collab-2** sur la branche **master**.

> Attention ici, au moment du Merge, a bien garder les corrections apportées par le **collaborateur 3** !
#### 3ème fusion :

Fusionnez la branche **feature/collab-1** sur la branche **master**.

> Attention ici, au moment du Merge, a bien garder les modifications apportées par les **collaborateurs 2 et 3** tout en y ajoutant les modifications du **collaborateur 1** !

### Conclusion :

Tout est ok ?
Alors n'oubliez pas de **push sur master** le résultat de toutes ces fusions sur votre dépôt distant et ... ce sera tout pour ce TP :)

Le simple **fork** de mon dépôt me permettra d'avoir les vôtre et de pouvoir les consulter, donc vous n'avez plus rien à faire.

**Vérifier tout de même que votre dépôt à vous soit public, que je puisse le consulter !**
18 changes: 18 additions & 0 deletions index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<!doctype html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title>Mon Site</title>
</head>
<body>
<h1>Le super nouveau site de l'école</h1>
<section>
<h2>Informations de l'éole :</h2>
<ul>
<li>Nom: ESGI</li>
<li>Adresse: 242 Rue du Feaubourg Saint Antoinette, 75011 Paris</li>
<li>Directeur: Kamal Sananes</li>
</ul>
</section>
</body>
</html>

0 comments on commit 6ea5987

Please sign in to comment.