====== 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