Technologies et Applications d'entreprise

Java/Jee XML Webservices SOA

Posted on by Rabii


C'est quoi ?

Git est un logiciel de gestion de versions (VCS en anglais). On ne va pas parler ici de ce type d'outils mais plutôt vous présenter Git et vous permettre de rapidement s'en servir. Git a la particularité d’être un système de contrôle de version distribué et cela a beaucoup d'avantages.

Git en pratique

Installation

  • Installer msysgit, vous pouvez le trouver ici
  • installer TortoiseGit ici

vous êtes prêt !

Un peu de théorie

Pour utiliser Git vous pouvez soit créer un nouveau dépôt vide ou clonez un dépôt existant. Voici quelques définitions nécessaires pour comprendre le workflow de Git:

  • Le répertoire Git est l'endroit où Git stocke les métadonnées et la base de donnée de votre projet. Il s'agit de la partie la plus importante de Git, et c'est ce qui est copié lorsque vous clonez un dépôt depuis un autre ordinateur.
  • Le répertoire de travail est un checkout d'une version du projet. Ces fichiers sont extraits de la base de données compressé dans le répertoire Git. Vous pouvez les utiliser ou modifier.
  • La "staging area" est un simple fichier, généralement contenues dans votre répertoire Git, qui stocke les informations à propos de ce qui va aller dans votre prochain commit. Il est parfois appelé l'index.

Avant d'aller plus loin, regardons ce joli diagramme qui explique très bien le workflow de Git (trouvé sur  osteele.com).

Comme vous pouvez le voir dans le schéma ci-dessus, dans Git, le code vit dans 4 endroits différents :

  1. Dépôt distant  (remote repository) - pensez-y comme un référentiel Github ou un serveur distant hébergé dans votre entreprise.
  2.  Répertoire de Git (local repository) - lorsque vous clonez un dépos distant ou créer un nouveau dépot, la base de code est créé ici dans le répertoire local. Toutes les commits que vous faites seront ici en premier.
  3.  L'index (staging area)  C'est quelque chose comme un lieu intermédiaire entre votre copie de travail et votre dépot local. C'est comme une zone de transit pour de votre code. Vous l'utilisez pour organiser les fichiers que vous souhaitez suivre et commiter.
  4. répertoire de travail (workspace)

Utiliser Git

Vous pouvez utiliser en ligne de commande ou à l'aide d'un GUI comme TortoiseGit. Il existe aussi un plugin Git pour eclipse. Pour la suite, on va utiliser Git en ligne de commande.


# cette commande va créer un repository vide et créer tout les fichiers nécessaires au fonctionnement de Git
$ git init
> Initialized empty Git repository in c:/Users/formation/Desktop/git_train/.git/
# vous pouvez maintenant ajouter tout vos fichiers
#affiche tout les fichiers que vous pouvez tracker avec Git
$ git status
# On branch master
#
# Initial commit
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#       file_one.txt
nothing added to commit but untracked files present (use "git add" to track)
# ajoute tout les fichiers du dossier courant à Git
$ git add .
#pour committer en local
$ git commit -m "initial commit"
[master (root-commit) a734fe1] initial commit
1 file changed, 3 insertions(+)
create mode 100644 file_one.txt

#You can view all the commits you have done till now using the following command
#voir tout les commits que vous avez fait
$ git log
commit a734fe1a86d00bab21420cb0d622d2f4306ce02f
Author: BEN NASR <ben.nasr.rabii@gmail.com>
Date:   Thu Mar 14 11:10:48 2013 +0100

initial commit
# pour voir les fichiers qui ont changé avant de commiter
$ git status
# On branch master
nothing to commit, working directory clean
#Apart from just viewing files that have changed, you may be interested in viewing the actual differences in the source code.
# pour voir les différences entre le dernier commit et l'actuel version de travail
$ git diff
diff --git a/file_one.txt b/file_on
index acd8c0d..8c45334 100644
--- a/file_one.txt
+++ b/file_one.txt
@@ -1,3 +1,4 @@
line one in the file
line two in the file
-trois et quatre
\ No newline at end of file
+trois et quatre
+ajout ligne 4
\ No newline at end of file

Pour la suite on va voir :

  • comment travailler avec les branches
  • comment faire les merge
  • création des tags

Posted on by Rabii | Posted in Divers | Tagged , ,


About Rabii

Ingénieur d'études et de développement chez "SOAT

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *