Ceci est une ancienne révision du document !
Git
Nous utilisons une instance locale de Gitlab pour gérer nos dépôts. Nous utilisons donc le système de gestion des dépôts Git. Nous récupérons aussi les données de Ryzom Core qui utilise le système de gestion des dépôts Mercurial.
Les indications d'installation sont données pour un système basé sur Debian, il suffit d'adapter la commande apt-get
à votre propre distribution/OS.
Commencez par installer git sur votre ordinateur.
sudo apt-get install git
Paramétrez ensuite votre git, de façon globale. Commencez par indiquer votre nom d'utilisateur, puis votre email :
git config --global user.name "Votre Nom Ici" git config --global user.email moi@example.com
Trouvez dans quel dossier vous souhaitez gérer votre projet (en local). Au besoin créez ce dossier. Mettez-vous dans ce dossier en console :
mkdir Monprojet cd Monprojet
Ensuite, tout dépend de si vous démarrez depuis un projet en local, ou si vous mettez aussi votre projet en ligne, par exemple sur Github ou notre Gitlab
Se connecter à un projet Github
Il faut indiquer à quelle source se nourrir.
Si vous avez déjà un projet sur Github que vous souhaitez copier en local,
git clone https://github.com/user/monprojet.git
Adaptez user/monprojet
à l'adresse url du projet et n'oubliez pas le .git à la fin. Le projet sera copié dans le dossier où vous êtes.
Si vous n'avez pas de projet sur Github (mais un compte),
git init
Cela créé un dossier caché où git stockera les infos. Vous pouvez ensuite ajouter l'adresse via la commande suivante :
git remote add origin https://github.com/user/monprojet.git
Il faudra ensuite “push” vos modifications vers le projet en question.
Pour contrôler que tout va bien :
git remote -v
Afin de ne pas retaper son mot de passe à chaque “push”, vous pouvez configurer ssh pour vous connecter directement à votre compte.
Commencez par générer votre clé ssh si ce n'est pas déjà fait et assurez-vous que l'agent ssh est lancé :
eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_rsa
Ouvrez le fichier ~/.ssh/id_rsa.pub
, copier tout, puis rendez-vous sur Github. Dans “Setting”, dans votre compte, sélectionnez “SSH keys”. Copiez votre clée publique. Indiquez ce que vous voulez en titre, seul vous le verrez. Cliquez sur “Add key”, entrez votre mot de passe. Pour vérifier que tout marche bien, faites :
ssh -T git@github.com
Si vous pouvez vous connecter c'est que ça marche.
Nous ne recommandons pas de passer uniquement par Github ; comme tout organisme centralisé et propriétaire, il est susceptible de dérive. Mais c'est actuellement une plate-forme connu et très utilisée, une façon comme une autre de commencer. Jusque là, il n'y a eu aucune alerte sur leurs pratiques.
Notre instance gitlab n'est pas très puissante et, de ce fait, uniquement ouverte aux projets en rapport avec Khaganat.
Commandes de base
Pour lister ce qui est à jour dans votre dossier :
git status
Les fichiers qui ne sont pas synchronisés seront en rouge, ceux qui attendent d'être placés dans un commit en vert.
Ajouter les nouveaux fichiers à git (en local) :
git add hello.txt git add *
Avec l'option *
, tous les nouveaux fichiers seront ajoutés.
Pour mettre à jour ce que vous avez ajouté/modifié :
git commit –m 'bla bla'
Les fichiers auront en commentaire votre “blabla” à cette version des modifications.
Ensuite, envoyez tout ça à un serveur :
git push
Cela utilise par défaut l'adresse que vous avez auparavant indiqué. Si vous envoyez sur Github, votre nom d'utilisateur et votre mot de passe sera demandé.
Aider la compilation de nos projets
Partie en brouillon, je note au fur et à mesure.
— zatalyz 2016/05/09 11:55
Gitlab permet aux utilisateurs d'aider à la compilation d'un projet en proposant la puissance de calcul de leurs ordinateurs personnels.
Installer et configures docker. En super utilisateur (faites sudo avant sinon), installez ce qui suis :
apt-get install docker systemctl start docker docker pull gitlab/gitlab-runner docker pull gitlab/gitlab-runner:alpine
Ressources utiles
- http://git-scm.com/book/fr/v1 : Un livre complet, en ligne et en français, sur comment utiliser Git. Très clair et détaillé.
- http://rogerdudler.github.io/git-guide/index.fr.html : un guide rapide, assez graphique.
- http://christopheducamp.com/2013/12/15/github-pour-nuls-partie-1/ : Un tuto un peu plus long, où chaque commande est expliquée
- http://ndpsoftware.com/git-cheatsheet.html : Un pense-bête très bien fait pour retrouver les commandes.
Voir aussi l'utilisation de Mercurial, un autre système de gestion de version.