On Github codeOverFlow / gitConf
“Git est un logiciel de gestion de versions décentralisé”
Il fournit des fonctionalités plus poussées que Subversion
Pour créer un dépôt vide
$ mkdir repo && cd repo && git --bare init
$ git config --global user.name "magicarp" $ git config --global user.email "toto@mail.fr"
Clonage du dépôt dans le dossier "foo"
$ git clone path/to/repo foo && cd foo
Et... c'est tout
Aller dans le dossier du projet et initialiser un suivi de version
$ cd foo && git init
Prérarer sa remote
$ git remote add origin path/to/repo
Création d'un fichier
$ touch licorne
$ git add licorne
$ git rm licorne
Supprimer uniquement le fichier de l'index
$ git rm --cached licorne
$ git mv licorne loutre
$ git status
Sur un fichier en particulier
$ git commit foo -m 'modification de foo'
Sur l'ensemble des modifications
$ git commit -am 'commit de masse !!!'
$ git push origin master
Récupérer les données
$ git fetch origin master
Opérer la fusion
$ git merge FETCH_HEAD
Raccourci
$ git pull origin master
1. Édition du fichier en conflit pour fusionner les bonnes modifications
$ vim licorne
2. Marquer le conflit comme résolu
$ git add licorne
3. Valider la résolution
$ git commit -m 'fin du conflit sur la licorne'
C'est un mécanisme très puissant de Git qui permet d'ajouter des fonctionalités en s'assurant qu'elles fonctionnent
$ git branch
Création de la branche
$ git branch awesomeFeature
Suivi de la branche
$ git checkout awesomeFeature
Raccourci
$ git checkout -b awesomeFeature
Dans la branche awesomeFeature
$ git push -u origin awesomeFeature
$ git branch -d awesomeFeature
$ git push origin :awesomeFeature
Permet de gérer tous ses dépôts et fournit une interface claire pour gérer ses commits
Script shell permettant d'afficher le nom de la branche courante dans son prompt