This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
2018_2019:s2:td:git [2019/03/25 07:53] blay [Définition de l'environnement] |
2018_2019:s2:td:git [2019/03/26 16:18] (current) blay [Définition de l'environnement] |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Introduction à GIT ====== | ====== Introduction à GIT ====== | ||
+ | <note tip>Cet énoncé a été conçu pour des groupes qui n'ont pas vraiment commencé à utiliser leur dépôt git. | ||
+ | Il est donc possible que certaines actions soient inutiles. | ||
+ | </note> | ||
===== Définition de l'environnement ===== | ===== Définition de l'environnement ===== | ||
- Adresse de gitlab : https://git-iutinfo.unice.fr/ | - Adresse de gitlab : https://git-iutinfo.unice.fr/ | ||
+ | - Pour que l'on sache qui commit : <code> git config --global user.name myusername </code> | ||
+ | - Pour que l'on ait son adresse : <code> git config --global user.email myemail </code> | ||
- Vous désactivez la vérification SSL <code> git config --global http.sslVerify false </code> | - Vous désactivez la vérification SSL <code> git config --global http.sslVerify false </code> | ||
- | - Suivez les instructions du dépôt (si vous ne les voyez plus : [[2018_2019:s2:td:git:depot|2018_2019:s2:td:git:depot]] | + | - Suivez les instructions du dépôt (si vous ne les voyez plus :[[2018_2019:s2:td:git:depot|2018_2019:s2:td:git:depot]] |
Pour les étudiants qui utilisent leur ordi perso, il est possible que vous ayez besoin de, ouvrir un Git CMD en administrateur, puis taper la commande suivante: | Pour les étudiants qui utilisent leur ordi perso, il est possible que vous ayez besoin de, ouvrir un Git CMD en administrateur, puis taper la commande suivante: | ||
Line 13: | Line 19: | ||
- | ===== Git comme un historique des modifications ===== | ||
- | Chaque étudiant du groupe a une tâche particulière, chacun choisit sa couleur : Blanc, Bleu, Vert, Jaune, Rouge | ||
+ | |||
+ | ===== Gitignore ===== | ||
+ | - Un des étudiants du groupe de TD ajoute le fichier {{:2018_2019:s2:td:gitignore.zip|.gitignore}} dans votre répertoire courant, i.e. | ||
+ | - Dézipper le fichier. | ||
+ | - <code> git add .gitignore</code> | ||
+ | - <code>git commit -a -m "ajout du .gitignore" </code> | ||
+ | - <code>git push</code> | ||
+ | - Tous les étudiants du groupe pour partir de la même version | ||
+ | - <code>git pull</code> | ||
+ | ===== Git comme un historique des modifications ===== | ||
+ | **Chaque étudiant du groupe a une tâche particulière, chacun choisit sa couleur : Blanc, Bleu, Vert, Jaune, Rouge** | ||
- Créer un fichier contenant une classe vice en fonction de votre couleur (public class X {}) | - Créer un fichier contenant une classe vice en fonction de votre couleur (public class X {}) | ||
* Blanc : Game (Partie) | * Blanc : Game (Partie) | ||
Line 60: | Line 75: | ||
- Visualisez les références distantes <code> git remote </code> | - Visualisez les références distantes <code> git remote </code> | ||
- Visualisez les URL associées aux références distantes <code>git remote -v </code> | - Visualisez les URL associées aux références distantes <code>git remote -v </code> | ||
- | - ENSEMBLES : | + | - BLANC envoie son code vers le dépôt distant : <code> git push origin master</code> |
- | - BLANC envoie son code vers le dépôt distant : <code> git push origin master</code> | + | |
* Cette commande signifie : git push [nom-distant] [nom-de-branche]. Ici, nous souhaitons pousser votre branche master vers le serveur origin (pour rappel, cloner un dépôt définit automatiquement ces noms pour vous) | * Cette commande signifie : git push [nom-distant] [nom-de-branche]. Ici, nous souhaitons pousser votre branche master vers le serveur origin (pour rappel, cloner un dépôt définit automatiquement ces noms pour vous) | ||
- ** TOUS ** | - ** TOUS ** | ||
Line 84: | Line 98: | ||
==== Branches de développement ==== | ==== Branches de développement ==== | ||
+ | <note important>Cette partie n'est pas insdispensable à la gestion de votre projet tutoré de S2, à moins que votre groupe en ai décidé autrement ;-) </note> | ||
+ | |||
Nous allons travailler avec une branche chacun. | Nous allons travailler avec une branche chacun. | ||
Line 93: | Line 109: | ||
- Basculez dans la branche de C<code> git checkout C</code> | - Basculez dans la branche de C<code> git checkout C</code> | ||
- Vérifiez dans quelle branche vous êtes | - Vérifiez dans quelle branche vous êtes | ||
- | - Ajoutez à la classe que vous avez créé initialement (Blanc-> Game, ect) ce que vous voulez puis commutez | + | - Ajoutez à la classe que vous avez créée initialement (Blanc-> Game, ect) ce que vous voulez puis commitez |
- Fermez votre fichier. | - Fermez votre fichier. | ||
- | - Observez l’historique des modifications du dépôt, que remarquez-vous ? | + | - Observez l’historique des modifications du dépôt, que remarquez-vous ? |
- | - Revenez à la branche « master » et observez l’historique des modifications, que remarquez-vous ? | + | - Revenez à la branche « master » et observez l’historique des modifications, que remarquez-vous ? |
- | - Ajoutez un plat non-végétarien au menu de la branche master. Commitez la modification. | + | - Vous souhaitez ajouter vos modifications à la branche master. Fusionnez (« merge ») la branche « C » à la branche « master ». <code>git merge C </code> Vérifiez que la fusion s'est bien passée. |
- | - Le cuisinier et le directeur du restaurant sont satisfaits de vos propositions de plat et souhaitent maintenant les ajouter au menu principal. Fusionnez (« merge ») la branche « vegetarien » à la branche « master ». <code>git merge vegetarien </code> Que se passe-t-il ? Ouvrez le fichier Menu.txt et vérifiez que la fusion s'est bien passée. | + | - Si vous avez un conflit, résolvez le conflit, pour cela dans le fichier en cause, identifiez les codes entre les balises de conflit (<<<<< et >>>>>). |
- | - Créez une branche « japonais » <code> git checkout -b japonais </code> | + | - Commitez le changement (et donc la fusion) en tapant « git commit –a » |
- | - Ajoutez des plats japonais en commitant au fur et à mesure les modifications et retirer des plats de viande. | + | |
- | - Revenez sur la branche « master » et fusionnez la branche « japonais ». Regardez le contenu du fichier Menu.txt et l’historique de modifications du dépôt. Y a-t-il eu un conflit ? Pourquoi ? | + | |
- | - Si vous avez un conflit, résolvez le conflit de manière à ajouter tous les plats situés entre les balises de conflit (<<<<< et >>>>>). Commitez le changement (et donc la fusion) en tapant « git commit –a » | + | |
- | - Modifiez le contenu de la branche japonais. | + | |
- | - Supprimer la branche japonais. Que se passe-t-il? <code> git branch -d japonais </code> | + | |
- | - Supprimez les branches « vegetarien » et « japonais ». | + | |
====== Références ====== | ====== Références ====== | ||
http://marklodato.github.io/visual-git-guide/index-en.html | http://marklodato.github.io/visual-git-guide/index-en.html |