[Tuto] Installation & utilisation hors ligne de Git pour les nuls
Salut à tous,
Voici un petit tuto rapide de mise en oeuvre de l'outil git que l'on utilise pour versionner des fichiers.
Cela fait un petit moment que je n'ai pas publié quelques choses d'utile ;)
Aussi, j'avais envie de parler de git, que j'utilise beaucoup pour mes applications hybrides ..
Enfin, surtout le "git clone ...", mais à présent que dans mon travail, mon chef me demande de lâcher "partiellement" le CVS pour git (Youhouuu, ça n'est pas trop tôt), je me suis dit qu'il était temps d'écrire un article sur le sujet !
Rien de bien sorcier, mais juste un petit mémo pour les journées où l'on ne souhaite pas trop réfléchir ;)
En gros, si le "yum install git" ou le "apt-get install git" ne fonctionnent pas.
Si vous n'avez pas la possibilité d'aller récupérer des paquets sur des serveurs distants ...
Ce tutoriel est fait pour vous !
Installation - Hors ligne
Tout d'abord, il vous faudra récupérer les sources de git ici :
https://github.com/git/git/archive/master.zip
Autrement voici une jolie version sauvegardée de git
Dès lors que vous aurez récupéré / téléchargé une version de git, il vous faudra le décompresser sur votre serveur, par exemple dans "/opt/git"
Vous devriez avoir désormais dans "/opt/git", un dossier "git-master" !
Ce dossier contient les sources (code source) de l'outil git, la prochaine étape consistera à les compiler, et les positionner de manière à ce que vous puissiez les utiliser depuis n'importe où !
Il faudra donc vous rendre dans ce dossier, et exécuter les commandes suivantes :
make configure
./configure --prefix=/usr
make all
make install
Voilà, vous avez désormais git d'installé sur votre serveur / ordinateur !
Installation - En ligne
Les mêmes étapes que l'installation "hors ligne", mais avec un simple copier-coller :
mkdir/opt/git
cd git
wgethttps://github.com/git/git/archive/master.zip
unzip git-master.zip
cd git-master
make configure
./configure --prefix=/usr
make all
make install
Utilisation de Git en tant que Serveur
Créer un serveur git, vous permettra d'avoir une machine sur laquelle seront stockés ET versionnés vos fichiers, vous pourrez alors depuis n'importe où les récupérer.
Nous allons créer (pour vulgariser) un dossier partagé, qui conservera un historique de tous les changements que vous y apporterez !
Sur la machine qui fera office de serveur, vous allez choisir un endroit, où vous souhaitez stocker votre "serveur" (Ex : /var/mon-serveur-git)
mkdir /var/mon-serveur-git
A présent, nous allons pouvoir créer des projets à l'intérieur de ce "serveur"
mkdir /var/mon-serveur-git/Mon-Projet-1.git
C'est là que ça devient intéressant !
Maintenant que notre arborescence est créée, nous allons indiquer à git, que le dossier "Mon-Projet-1.git" est un projet git !
Pour cela, il faudra se rendre à l'intérieur du dossier :
cd /var/mon-serveur-git/Mon-Projet-1.git
Puis exécuter la commande git prévue à cet effet
git init --bare
C'est bon !!!
Ne touchez plus à rien, votre projet "Mon-Projet-1" est désormais opérationnel et utilisable depuis n'importe où, pour y stocker vos fichiers !!!
Utilisation de Git en tant que Client
Un client c'est quoi ? Ce n'est ni plus ni moins qu'un utilisateur ;)
Aussi, si vous êtes là, c'est que vous avez déjà un serveur fonctionnel, et que la partie "Utilisation de git en tant que Serveur" est acquise !
Nous avons donc un projet "Mon-Projet-1" sur notre serveur git situé dans "/var/mon-serveur-git/Mon-Projet-1.git"
Récupérer un projet
Nous allons le récupérer, en langage git, nous allons le "cloner" :
git clone ssh://mon-serveur-git/var/mon-serveur-git/Mon-Projet-1.git
mon-serveur-git, peut être un nom de domaine, ou bien une adresse ip.
Un dossier "Mon-Projet-1" vient d’apparaître ;)
Ajouter un fichier au projet
Nous avons donc notre dossier Mon-Projet-1
Nous souhaitons donc y ajouter un fichier "toto.txt"
git add toto.txt
Hop, le fichier est ajouté ...
Cependant, il ne sera validé que si vous faites un "commit"
git commit
Vous pouvez également ajouter un commentaire à ce commit :
git commit -m "Le fichier toto.txt est indispensable pour la survie de l'espece"
Enfin, pour pousser tous ces changements sur votre serveur distant, il vous faudra lancer cette commande :
git push origin master
Récupérer les dernières mises à jour :
En admettant que vous soyez plusieurs à travailler sur un projet, vous pourrez récupérer les derniers changements via la commande
git pull
Créer des "Versions"
Plus communément appelées TAG, ce sont des balises, elles permettent de définir ou d'actualiser des versions.
Car bien que vous ayez une sauvegarde de chacune de vos modifications, il vous sera probablement nécessaire de définir à certains moments un numéro de version pour votre projet (un peu comme un marque-page), afin de pouvoir revenir à telle ou telle version si besoin ;)
git tag 1.0.0
Voir les logs :
Il est souvent important de consulter ce qu'il se passe, afin de savoir ce qui a été fait durant votre absence, aussi, git embarque également une fonction permettant de consulter ce qui a été fait (et au passage de lire les commentaires lié aux changements)
git log
Conclusion
Git c'est cool, alors lâchez le CVS et le SVN pour goûter aux innombrables joies qu'offre GIT au travers d'une grande simplicité