Fonctionnement et workflow

Slides:



Advertisements
Présentations similaires
Subversion.
Advertisements

Git et Gitlab In Git we trust. Git et Gitlab In Git we trust.
Abes agence bibliographique de l’enseignement supérieur Comment adapter les “modéles de notices” à vos besoins ?
GCstar Gestionnaire de collections personnelles Christian Jodar (Tian)
1 Après 3 séances ● Utilisation du système Linux – Il faut maîtriser l'utilisation de la souris (« copy/paste » des textes donnés) – Utilisation de la.
JPF 2008 Gestion distribué de version avec Mercurial Michael Scherer JPF 2008.
Vénuti Eric, Professeur documentaliste stagiaire, Février 2014.
Subversion. 2 Subversion : Pour Quoi Faire ? Problèmes de la gestion du code dans un projet – Durée de vie du projet peut être longue : besoin de gérer.
1 Après 5 séances ● Utilisation du système Linux – Il faut maîtriser l'utilisation de la souris (« copy/paste » des textes donnés) – Utilisation de la.
Subversion. 2 Subversion : Pour Quoi Faire ? Problèmes de la gestion du code dans un projet – La durée de vie du projet peut être longue : besoin de gérer.
VHFFS : Enlarge your hosting Sylvain Rochet Samuel Lesueur Cette présentation est sous contrat Paternité-Partage des Conditions Initiales à l'Identique.
1/6 Commandes de base en mode console sous LINUX/UNIX ● Arborescence, fichiers et répertoires ● Alias ● Manpages ● Editeur de texte vi.
Les instructions pour la création de cette présentation sont incluses dans la page de commentaires de chaque diapositive. Dans le menu Affichage, cliquez.
Introduction Bases de Données NoSQL Principe de base Avantages/Inconvénients L’évolution du Web 2.0 et actuellement Web 3.0, a montrée l’insuffisance des.
AMUE – SIFAC Intégration Fichier Mouvements BDF
OpenStreetMap (OSM) Utiliser l'éditeur JOSM
Rechercher des articles et des sites web
Titre Noms des auteurs 1. A propos de ce chablon
Mettre à jour les données
Guide d’utilisation pour Git
Hot Standby Router Protocol (HSRP) - Partage de charge
OSPF - Comment OSPF génère les routes par défaut
Interprétation des indicateurs?
Guide d’utilisation Juin 2017.
Publication site AROEVEN
Utiliser le dossier Mon EBSCOhost
S’afficher pour publier !
Se connecter toujours depuis TecfaMoodle
GUIDE UTILISATEUR- MY HR
Les commandes du système de fichiers
Gestion de version centralisée et décentralisée
EVOLUTION DE LA PENSION DES ENSEIGNANTS DEPUIS DECEMBRE 2011
Rechercher des articles et des sites web
Spip / Joomla...en 1h ! Mercredi 30 Avril 2008.
Formation Subversion 1 1.
Conseils pour préparer efficacement un TPE
Changer les critères de nommage
Guillaume Philippon Tutoriel git.
Écrire un article à plusieurs
Windows 7 NTFS.
Module 5 : Gestion des disques.
Gestion du cours Aissa Boulmerka.
Chapitre 7 Configuration de l'environnement du bureau
ARGENT Sais-tu payer plus ?
Git 09/04/2015 Julien
Partager la propriété d’un dépôt HAL
2 Copyright © 2004, Oracle. Tous droits réservés. Restreindre et trier les données.
Bases de données sous Access. Initiation aux bases de données  Structure d’une base de données.
En savoir plus Microsoft Actualités SharePoint
Présentation de l’outil
CountrySTAT / FENIX Aperçu globale de l’Editeur DSD dans la nouvelle plateforme CountrySTAT FORMATION DES POINTS FOCAUX SUR LE SYSTEME CountrySTAT/FENIX.
Introduction à la démarche DevOps
Comment personnaliser Microsoft SharePoint Site web
La création de notices d’exemplaires
Metadata Editor. Éditeur de métadonnées. Le catalogage dans Alma (4)
Créer un diaporama avec Open Office Impress
Formation git.
Logiciel de présentation
Tableaux croisés dynamiques sous Excel et Tableau Software :
Présentation du site Martine Cochet.
Tableau de bord d’un système de recommandation
L’élaboration d’une fiche de lecture : éléments méthodologiques
Boulain Joris, Handouz Yassine, Regnier Fabien, Giraud Antoine
Contenu Systèmes de test parallèles Multithreading Synchronisation
ScienceDirect Guide d’utilisation de la base de données : ScienceDirect Pr R. EL OUAHBI.
Qu’est ce qu’une page web? Comment fonctionne un site web?
DONNÉE DE BASE QM Manuel de formation. Agenda 2  Introduction  Objectif de la formation  Données de base QM: Caractéristique de contrôle Catalogue.
Comment aller plus loin avec Zotero? Comité d’Aide à la Publication, FMT Zotero worshop Hand’s on session Zotero worshop Hand’s on session 12h-12h30.
Les Commandes de base Linux. 1 L’aide sur les commandes Linux ◦ help : obtenir de l’aide pour une commande interne du shell. Elle permet aussi d'afficher.
Transcription de la présentation:

Fonctionnement et workflow 1 au quotidien Fonctionnement et workflow Cyrille Pontvieux Ingénieur Objet Direct/Viseo Licence : CC-by-sa / GFDL

Sommaire Avantages Nœuds, branches, tags Zones de travail Commandes principales Workflows Outils / Config

Avantages de git

Avantages de git Flexibilité du workflow Création de branches facile et rapide Merge et Back-port « Tout » se fait localement Rapidité Décentralisé Populaire (documentation, aide)

Nœuds, branches et tags

Nœuds, branches et tags Git gère du contenu, pas des fichiers Tout tourne autour des commits (nœuds), qui sont référencés par une clé de hashage unique au dépôt (sha1) Un tag est une référence sur un sha1, comme un alias Une branche est comme un tag, mais elle se déplace avec le commit fils.

Commit Changeset (ensemble de changements effectués sur des fichiers) Un ou plusieurs commits parents Une date Un auteur Le sha1 d'un commit change dès qu'un de ces éléments change

Branches et tags

Zones de travail 5 zones distinctes 4 locales, 1 distante Commandes pour passer d'une zone à l'autre

Workflow et zones de travail Index/Stage Workspace Workspace Dépôt Local Stash Dépôt Distant

Commandes principales init add rm commit push fetch merge rebase stash checkout branch tag

Commandes principales (1/2) init : création d'un dépôt add/rm : ajoute ou retire les modifications dans l'index commit : crée un commit local à partir de l'index push : synchronise l'arbre local vers l'arbre distant fetch (et pull) : synchronise l'arbre distant vers l'arbre local

Commandes principales (2/2) merge : crée un commit ayant deux parents, réalisant une fusion de branches rebase : change la base (le commit parent) d'un ensemble de commits stash : pousse les modifications locales (workspace + index) dans une zone tampon (ou les ressort) checkout : place le workspace sur une branche ou un tag donné branch : crée une branche à partir de la branche courante tag : crée un tag à partir de la branche courante

Merge Un merge crée, par défaut, un nouveau commit de fusion, un nœud Ce nœud a 2 parents, les têtes des branches fusionnées On merge une branche sur la branche actuelle On peut abandonner un merge à tout moment pour recommencer Utiliser git mergetool pour s'aider à fusionner.

Rebase Un rebase permet de changer le commit parent d'un commit, de changer sa base Cette opération doit être évitées sur des commits déjà publiés dans le dépôt distant (changements des sha1) Cela permet : De réorganiser l'ordre des commits locaux D'en fusionner ou supprimer certains De changer le message de commit De rejouer les commits d'une branche sur une autre

Pull et Push pull permet de rapatrier sur son workspace les changement réalisées sur le dépôt distant pull = fetch + merge ou fetch + rebase (selon configuration) push permet de publier depuis le dépôt local sur le dépôt distant Attention push sans argument pousse toutes les branches locales.

Workflows

Workflows

Workflows

Outils / Configuration

Pour ne pas être perdu, un bon prompt est important : Se laisser aider Pour ne pas être perdu, un bon prompt est important : Lisez ce que vous dit git, souvent la commande que vous devrez taper est indiquée. git status, merge, rebase vous indique comment modifier l'index, continuer ou abandonner. Utilisez très souvent git status, et gitk (ou gitg). Cela va grandement vous aidez à comprendre ce qui est réalisé.

Outils gitk et gitg gitdaemon, gitlab, gitolite, gitosis svn2git (pour migrer depuis subversion) egit et autres greffons pour IDE une ligne de commande avec un bon prompt !

Configuration Dans votre home se trouve un fichier caché .gitconfig permettant de configurer Git : créer des alias ajouter de la couleur configurer l'éditeur de conflit par défaut modifier votre nom et email pour les contributions etc

Configuration $ git config --global -e [branch] autosetuprebase = always [color] ui = true [merge] tool = meld [mergetool] prompt = false [alias] st = status ci = commit co = checkout br = branch unmerged = !git ls-files -u|cut -f2|sort -u untracked = !git ls-files -o --exclude- standard|sort -u

Couleur : http://dl.free.fr/rPggD2mKm Ressources intéressantes Graphe et commandes autour du workflow : http://www.ndpsoftware.com/git-cheatsheet.html Cheat Sheet : Couleur : http://dl.free.fr/rPggD2mKm N&B : http://dl.free.fr/pcFIkVBUo

2626 Questions / Réponses