====== Généralités ======
Git est un outil de gestion de versions décentralisé. C'est un logiciel libre créé par Linus Torvald, le créateur du noyau Linux, et distribué sous la GNU GPL v2.
====== Obtenir de l'information ======
man git
git --help
====== Installation serveur Subversion ======
====== Configuration ======
===== Configuration générale =====
FIXME à compléter avec fichiers de configurations réels.
^ Emplacement ^ Fonction ^
| /etc/... | blabla |
===== Configuration spécifique =====
====== Utilisation habituelle ======
===== Utilisation simple =====
git add nomfic #ajout dans git ou déclaration de modification d'un fichier.
git commit #valider notre travail (en local) en mettant un commentaire clair et précis.
git status #vérifier si fichier modifie ou non.
git log #vérifier la liste des commit.
git push #envoyer les commit locaux au serveur distant.
===== Utilisation avec 2 machines ou en projet en équipe =====
git status
git branch -a
cat .git/config
git log --pretty=oneline
git fetch origin #récuperation des fichiers sans être applique positions a côté pour pouvoir faire des diffs.
git log ..origin/master
git diff ..origin/master #différence entre ce qu'on a et les modif rapatriées.
git rebase origin/master #fusion en local de nos modifs et de celle qu'on a rappatriées.
====== Créer un répertoire GIT ======
mkdir repertoiregit
cd repertoiregit
git init #créer le dossier .git avec les informations de bases.
===== Commandes qui configurent le fichier ''/home/userdebase/.gitconfig'' =====
git config --global user.name "Romain BERTHAUD"
git config --global user.email romainberthcom@gmail.com
Supplément possible.
git config --global color.branch auto
git config --global color.diff auto
git config --global color.status auto
===== Commandes qui configurent le fichier ''repertoireGIT/.git/config'' =====
git remote add origin git@bolivar.itaapy.com:romain.berthaud.git
git config --add remote.origin.push '+refs/heads/*:refs/heads/*'
====== Inventaire des principales commandes ======
Récupérer la totalité du contenu d'un projet git distant dans un répertoire local.
git clone git@bolivar.itaapy.com:romain.berthaud
Voir les branches locales et celles en cours d'utilisation.
git branch
Voir les branches distantes.
git branch -r
Mettre a jour la branche
git fetch origin #updates your copy of the origin branches
git log master..origin #what is the difference between your local branch master and the origin master branch
Changer de branche pour une autre (ici se positionner sur la 0.15)
git checkout 0.15
Synchroniser avec le trunk.
git rebase origin
Vérifier les différences entre deux fichiers avant de commiter.
git diff
Supprimer un fichier versionné (ca le supprime aussi en même temps).
git rm
Renommer un fichier versionné.
git mv
====== Problème de fichier ======
Enlever des messages a cause d'un soucis (ex : suppression d'un fichier sans la commande git rm).
git commit -a -amend #recommit avec le dernier commit sans les erreurs
git push -f #forcer le commit parce qu'il y aura une version differente sur le git du serveur