TP Git. Author : Cedric Dumoulin Date : 2 déc. 2014 Rev : 9 Dec. 2014



Documents pareils
Les systèmes de gestion de version

Le système de gestion de version Git et GitHub

Tutoriel git. Régis Briant, Youngseob Kim & Dmitry Khvorostyanov. Table des matières. 1 Configurer git 2

Les logiciels de gestion de version exemple de GIT et application avec SmartGIT

Connexions à un projet CVS via Eclipse en accès local et distant. 15 Mai 2007

Plan global Outils de développement et compilation. Ce que l on veut éviter. Plan. Git : gestion de code source et versionnement.

Systèmes de gestion de code source

Placez vous au préalable à l endroit voulu dans l arborescence avant de cliquer sur l icône Nouveau Répertoire

Gestion des documents avec ALFRESCO

Utilisation de GCM (Google Cloud Messaging) pour Android. Partie préliminaire éventuelle : Création d'un AVD lisant GCM

Introduction à Eclipse

Utiliser Subversion (SVN) avec Tortoise

Qu est ce qu une bibliothèque?

e-obs : Conception et utilisation Rémy Decoupes Ether // ums3365

Guide pour le bon fonctionnement des applications académiques avec Internet Explorer 7.x

Transfert de fichiers (ftp) avec dreamweaver cs5 hébergement et nom de domaine. MC Benveniste

Installation de la messagerie EMWAC IMS Sur Windows NT4 serveur ou Windows 2000 serveur

Utilisation de Sarbacane 3 Sarbacane Software

JOnAS Day 5.1. Outils de développements

La magie de SVN. Découverte & usage du logiciel

Installation de Joomla avec Filezilla

GANTTPROJECT. Julien TENDERO

GesTab. Gestion centralisée de tablettes Android

Installation et prise en main

Etude de cas : PGE JEE V2

TUTORIEL: INSTALLATION D'UN SERVEUR LOCAL SOUS WINDOWS 7 POUR APPINVENTOR version du 06/04/2013

Panda Managed Office Protection. Guide d'installation pour les clients de WebAdmin

À propos de Kobo Desktop Télécharger et installer Kobo Desktop... 6

Configurer Thunderbird sur clé USB

Configuration d'un annuaire LDAP

TP 6 Installation et configuration d une site internet avec un CMS Illustration avec Wordpress

UltraVNC, UltraVNC SC réglages et configurations

Installer Enterprise Miner 5.1 en SAS environnement Windows

Tutorial NL220. Objectifs : Fournir un guide utilisateur pour NL220. Présenter une méthodologie efficace pour la création de projet

1 Démarrage de Marionnet

Projet : PcAnywhere et Le contrôle à distance.

CA ARCserve Backup Patch Manager pour Windows

Internet Explorer. Microsoft. Sommaire :

La réplication sous SQL Server 2005

Corrigé de l'atelier pratique du module 8 : Implémentation de la réplication

Synchroniser ses photos

Création d'un site dynamique en PHP avec Dreamweaver et MySQL

IFT287 Exploitation de base de données relationnelles et orientées objet. Laboratoire Mon premier programme Java en Eclipse

INF 9013 Les TIC et l apprentissage en milieu de travail

Table des matières L INTEGRATION DE SAS AVEC JMP. Les échanges de données entre SAS et JMP, en mode déconnecté. Dans JMP

Sage Customer View (ios) Guide d installation et d utilisation

LANDPARK ACTIVE DIRECTORY OPEN/LDAP

Installation de Windows 2000 Serveur

Guide de démarrage rapide Centre de copies et d'impression Bureau en Gros en ligne

Début de la procédure

Autres solutions de contrôle à distance d utilisation gratuite

Vous y trouverez notamment les dernières versions Windows, MAC OS X et Linux de Thunderbird.

Manuel d utilisation de l outil collaboratif

ECLIPSE ET PDT (Php development tools)

Manuel de l utilisateur

SQL Server Installation Center et SQL Server Management Studio

Serveur de travail collaboratif Michaël Hoste -

cbox VOS FICHIERS DEVIENNENT MOBILES! POUR CLIENT MAC OS X MANUEL D UTILISATION

Logiciel de gestion pour les agences immobilières

Gestion des utilisateurs : Active Directory

WordPress :: Migrer son site du local vers le serveur en ligne

SP-1101W/SP-2101W Quick Installation Guide

Guide des Développeurs SITools2 V3

Interface PC Vivago Ultra. Pro. Guide d'utilisation

2010 Ing. Punzenberger COPA-DATA GmbH. Tous droits réservés.

Approche Contract First

Création d'un questionnaire (sondage)

Sécurité complète pour dispositifs portables d'entreprise. Guide de déploiement

Les Enseignants de l Ere Technologique - Tunisie. Niveau 1

StreamServe Persuasion SP4

Guide utilisation SFR Sync. SFR Business Team - Présentation

Thème : Création, Hébergement et référencement d un site Web

Galaxy est une plateforme de traitements (bio)informatiques accessible depuis l'url : (en précisant votre login et mot de passe LDAP «genotoul»).

REALISER UN SITE INTERNET AVEC IZISPOT SOMMAIRE

Avira Professional Security Migrer vers Avira Professional Security version HowTo

TP architecture N-tiers en Java EE ou Java EE, Android : la synthèse. Le serveur GereCompteBancaireServlet

Introduction. Première connexion

FileZilla. Sauvegarder son site Guppy à l aide de. Sommaire:

Présentation de la plateforme WINDCHILL. Invitation à rejoindre la plateforme

Raja Bases de données distribuées A Lire - Tutoriel

Installation d un patch de mise à jour et d un pack langue dans SugarCRM Open Source 4.5.1

Préparation à l installation d Active Directory

Comment créer vos propres pages web?

ftp & sftp : transférer des fichiers

Atelier Le gestionnaire de fichier

SOMMAIRE. Comment se connecter?

Procédure d'installation complète de Click&Decide sur un serveur

Didacticiel de mise à jour Web

Utiliser ma messagerie GMAIL

VTX FTP. Transfert de fichiers business par FTP - Manuel de l'utilisateur. Informations complémentaires : info@vtx.

eurobraille VOYONS ENSEMBLE MANUEL D'UTILISATION WIFI iris 40, 20 iris-s 32, 20 iris-kb 40,20 VERSION 1.82

Septembre 2012 Document rédigé avec epsilonwriter

PLAN. Connexion Mac vers PC. mercredi 15 juillet 2009

Accès au Serveur de PAIE «SPV» par INTERNET Paramétrage du poste de travail «Windows»

Guide Utilisateur Transnet

_ PARAMETRE DU COMPTE _ ACCEUIL. 1 ere Etape «Créer un compte principal» Créer un compte secondaire. Ouvrir un compte principal

Configuration des logiciels de messagerie

contact@nqicorp.com - Web :

Créer et partager des fichiers

Transcription:

Objectifs TP Git Author : Cedric Dumoulin Date : 2 déc. 2014 Rev : 9 Dec. 2014 L'objectif de cet atelier est d'apprendre à utiliser GIT pour versionner ses projet et pour travailler à plusieurs. Vous allez commencé par apprendre à travailler sur un dépôt local (clone d'un dépôt partagé), puis vous allez travailler sur un dépôt partagé. Le livre suivant, en francais, décrit comment utiliser GIT. Lisez les premiers chapitres si vous n'avez pas bien compris le cours, ou si vous voulez approfondir vos connaissances. http://git-scm.com/book/fr/v1 Pour cette atelier, il est préférable de travailler dans un nouveau workspace. Créer un dépôt partagé Commencez par créer un dépôt partagé sur un hébergeur GIT. Vous pouvez par exemple créer un tel dépot sur le site github.com Créer un dépôt sur github.com Vous devez d'abord créer un compte sur github, ou utiliser votre compte. Ensuite, suivez les indications pour créer un nouveau dépot (repository). Donner lui le nom 'pje2014'. Accepter la création du 'README'. Configurer Eclipse Structure des répertoires Travailler avec GIT implique de faire attention à la structure de vos répertoires. Vous ne pouvez pas utiliser les valeurs par défaut proposée par Eclipse. La structure suivante vous donne un exemple d'organisation:

Organisation des répertoires Ne créez pas ces répertoire maintenant. Faites attention a leur localisation dans les différents wizard. Le tableau suivant vous explique les répertoires: nom Rôle Quand est-il créé? github-pje2014 workspace Eclipse C'est vous qui le créez lors de la création du workspace Eclipse..metadata Les métadonnées Créé par Eclipse. d'eclipse. pje2014 workspace GIT. Créé lors de la connexion avec le dépôt. Vous devez donner le nom est la localisation dans le wizard de connexion au dépôt..git Clone du dépôt. Créé par GIT lors de la connexion avec le dépôt. pje14.git.test projet java C'est vous qui le créez en créant un projet java. Vous devez spécifiez la localisation et le nom du répertoire dans le wizard de création de projet. Le nom de répertoire doit être le nom du projet. Vous pouvez créer plusieurs projets. Cloner le dépôt Vous allez maintenant accéder à votre dépôt à partir d'eclipse. Passer en perspective GIT. Dans la vue 'Git Repositories', cliquer sur 'clone a Git Repository'. Dans 'Clone Git Repository', remplissez les champs. Vous pouvez trouver l'url de votre dépôt sur la page web de celui-ci. Faites attention a la localisation du workspace GIT

A cette étape, vous devez avoir une copie locale de votre dépot. Celui-ci est visible dans la vue 'Git Repositories'. Créer un projet Java Changer de perspective. Créer un projet Java. Faites attention à la localisation de votre projet. N'acceptez pas la localisation par défaut. Ce doit être un nouveau répertoire dans le workspace GIT 'pje2014'. A cette étape, vous devez avoir un projet contrôlé par GIT. Le nom de votre projet doit être suivie du nom du dépôt et de la branche. Travailler en local Exercez-vous à travailler en local. Basculez entre les perspectives GIt et JAVA pour vérifier les résultats. Premier commit Créez une classe C1, Commit Vérifiez l'historique Second Commit Créez une classe C2, Commit Vérifiez l'historique Créer une Branche Créez une branche 'br1' Créez une classe C3, Commit Vérifiez l'historique, regardez bien les étiquètes! Créez une classe C4, Commit Vérifiez l'historique. Vous avez maintenant une branche

Premier merge : Fast-Forward Vous allez merger votre branche br1 dans master Changer de branche, aller sur master o Dans 'Git Repositories', double click sur la branche demander le merge de la branche br1 o Comme l'historique est linéaire, GIT fait un fast-forward. Il ne faite que avancer les étiquetes locales. Vérifiez l'historique, regardez bien les étiquètes! Où est br1? master? origin/master? Second merge : vraie merge Basculer sur br1 Créez une classe C5, Commit basculer sur master Créez une classe C6, Commit Vérifiez l'historique, o regardez bien les étiquètes. Vous devez voir maintenant deux branches distinctes. o Utilisez la toolbar de History pour bien afficher la totalité des commits de votre dépot. demander le merge de la branche br1 o Le merge s'effectue sur deux branches distinctes. GIT crée un nouveau noeud pour merger les deux branches Vérifiez l'historique afin de visualiser le nouveau noeud. Rebase A venir :-( Travailler à plusieurs Jusqu'ici, vous avez travaillé avec votre dépot local. C'est ce que vous devez faire quand vous développez une nouvelle fonctionnalité. Une fois la fonctionnalité au point, il faut la partagé dans le dépôt commun. Créer un second clone Pour simuler le partage, il faut créer un second clone de votre dépot distant. Pour cela, créez un deuxième workspace Eclipse. Vous pouvez le faire sur votre machine, ou sur le compte de votre binôme. Voir Cloner le dépôt.

Par la suite, nous distincterons les deux espaces de travaille Eclipse par 'Eclipse1' et 'Eclipse2'. Dans Eclipse2, vous devriez voir le projet de Eclipse1, ainsi que sont historique. A ce niveau, les espaces de travaille de 'Eclipse1' et 'Eclipse2'sont différents. Si ce n'est pas le cas, c'est que vous avez des'pull' à la place de 'commit'. Dans ce cas, créez une nouvelle classe dans Eclipse1 afin d'avoir un espace de travaille différent. Pousser les modifications Pour partager les modifications, il faut les 'pousser' (push) dans le dépôt distant. Dans votre historique, vous avez une etiquetes 'origin/master' et une etiquete 'master'. Ces étiquètes référencent le dernier commit de la branche correspondante. La première étiquète 'origin/master' correspond au commit de 'master' dans le dépot distant. La seconde correspond au dernier commit que vous avez fait dans la branche locale 'master'. Le but de push est de pousser les commits que vous avez fait dans la branche locale master vers la branche distante master, puis de faire avancer l'etiquete origin/master. Comment pousser les commit : Dans Eclipse1 sélectionnez la branche master push Vérifiez l'historique; o ou est l'étiquète 'origin/master'? master? Récupérer (tirer) les modifications Pour récupérer les modifications du dépôts distant, il faut les tirer (pull) dans votre dépôt local. GIT fait le pull se fait en deux étapes : un fetch - qui rapatrie dans votre dépot local tous les commits distant que vous n'avez pas encore. o Dans cette étape, origin/master peut etre modifié par GIT si des commit distants existent dans cette branche. un merge - qui merge la branche origin/master avec votre branche master locale o GIT fera un fast-forward si possible o Sinon, il creera un nouveau noeud merge Ces deux etapes peuvent se faire séparément, mais GIT offre une commande faisant les deux à la fois : 'pull'.

Allez dans Eclipse2 'Git Repository', sélectionnez votre dépôt, puis click-droit->pull o Cela doit synchroniser votre dépot local et fusionner votre branche master. Vérifiez l'historique; o ou est l'étiquète 'origin/master'? master? Gérer les conflits La plupart du temps, le merge se passes sans probleme. GIT arrive a fusionner les modifications de chacun. La fusion se fait par fichier, ligne à ligne: GIT remplace les lignes modifiés par la nouvelle ligne. Les conflits arrivent si vous modifiez des lignes qui ont été modifié par quelqu'un d'autre depuis votre derniere synchronisation avec le depot distant. Dans ce cas, GIT interrompt le merge, et vous demande de regler le conflit. GIT indique le conflit dans le fichier concerné à l'aide de chevron '<<<<<<<<<<<< et >>>>>>>>>>>>'. Vous devez reoudre le conflit, enlever les chevrons, et finir le processus de merge en placant le fichier resolu dans la stagged area, puis en faisant un commit. Dans Eclipse1 et Eclipse2, modifiez la meme ligne du meme fichier. Allez dans Eclipse1 pousser vos modifications Allez dans Eclipse2 pousser vos modifications o Eclipse refuse, il vous demande de faire 'pull' auparavant Tirez les modifications du depot distant o Le merge s'interompt o reglez le conflit placez votre fichier resolu dans le staged area Dans 'Git Repository', sectionnez votre répertoire distant Cherchez le menu permettant de terminer le pull Vous avez maintenant une version locale contenant vos modifications et les modifications du serveur Faites un push afin pousser vos modifications sur le serveur. Allez dans Eclipse1 Tirez les modifications du serveur o Vous devez voir les modifications effectué dans Eclipse2