GIT
De Centre de Ressources Numériques - Labomedia
Sommaire
Intro
GIT est un système de gestion de version distribué, à chaque changement, un "commit"
il faut mettre un tag, une étiquette pour identifier la version publiée
GIT est à la fois un serveur local qui peut être exporter sur des plateformes type https://gitorious.org ou https://github.com/
Syntaxe et commandes de base
git la-commande plus-des-options
Configurer son environnement global
git config --global user.name "Benjamin CADON" // on met son "vrai" nom et pas le loggin sur gitourious
git config --global user.email benjamin@labomedia.net
vim .gitconfig // pour voir sa config
Initialiser un dépot
benjamin@b01-laptop:~$ mkdir foo benjamin@b01-laptop:~$ cd foo benjamin@b01-laptop:~/foo$ git init Initialized empty Git repository in .git/
Créer un fichier et le commettre
benjamin@b01-laptop:~/foo$ touch toto benjamin@b01-laptop:~/foo$ git add toto benjamin@b01-laptop:~/foo$ git status // pour savoir s'il y a des modifs # On branch master # # Initial commit # # Changes to be committed: # (use "git rm --cached <file>..." to unstage) # # new file: toto #
On "commit"
git commit
remplir le fichier d'étiquette pour ce commit et enregistrer
git log commit f87799b7f917a0a2a505bb4bd83acc3b889ad2fd Author: Benjamin CADON <benjamin@labomedia.net> Date: Thu Aug 4 18:13:55 2011 +0200
toto upload 01
on modifie le fichier toto
git add // pour signaler que l'on veut uploader le fichier modifié
git commit -m "nouveau toto tout beau"
git log
Changer de branche dans GIT
git checkout f87799b7f917a0a2a505bb4bd83acc3b889ad2fd // reviens à la version précédente git checkout -b nouvelle_branche // pour créer une nouvelle branche git checkout master // pour revenir dans la branche principale
on fait une branche lorsque l'on veut tester une fonctionnalité dans une logique expérimentale, il faut ensuite "merger"
Pousser un projet sur Gitourious
- vérifier au préalable que l'on a déjà ajouté sa clef ssh publique sur gitourious (ssh key management sur gitourious)
- créer un nouveau projet sur gitourious (foufou)
- créer un nouveau repository (repofou)
ensuite :
Pushing your local repository to Gitorious
git checkout master git remote add origin git@gitorious.org:foufou/repofou.git git push origin master
Ajouter le contenu d'un répertoire de son disque sur Gitorious
git init git add git commit git remote add origin git@gitorious.org:monprojet/mondepot.git git push origin master
Commandes supplémentaires
git log git help log git remote -v
GIT en interface graphique
- GitEye mais n'est pas entièrement libre
Références complémentaires
foo = foobar = fucked up beyond all recognition