Logo Khaganat
Traductions de cette page?:

Ceci est une ancienne révision du document !


Recupérer les données : Mercurial, Git

Page à reprendre / développer / adapter au vu du serveur de données en cours de déploiement — YannK 2015/07/26 22:54

Les données du serveur de jeu Ryzom Core sont hébergées sur Bitbucket mais nous avons mis en place notre propre serveur Mercurial pour la gestion de notre système propre.

Site Internet de Bitbucket Elles sont régulièrement mises à jour par les participants au projet. C'est à partir de là que l'on peut récupérer tous les fichiers nécessaires à l'installation d'un serveur, à la création d'un jeu ou au déploiement d'un client. Pour l'heure, il n'existe pas de dépôt de tous les binaires que l'on peut compiler à partir de ces sources.

Nous allons donc voir dans un premier temps comment récupérer les fichiers, les synchroniser, voire proposer des modifications

Le vocabulaire et les concepts

Avant de voir comment réaliser les différentes opérations, il semble important de préciser quelques notions de vocabulaire. Les termes anglais ont été conservés car il est très fréquent que cela soient ceux que vous rencontrerez sur IRC ou dans des tutoriels.

L'endroit où les fichiers sont conservés sur Internet (le zone de Bitbucket qui accueille les fichiers Ryzom Core par exemple) s'appelle un repository (dépôt en anglais). En créant un compte sur Bitbucket, vous allez créer votre propre repository, qui contiendra votre version des données, celle avec laquelle vous allez synchroniser votre répertoire local (sur votre ordinateur). Le dépôt contient en outre un historique des modifications faites (dans le répertoire .hg). On présente chaque nouveau dépôt comme un fork (ang. bifurcation)de son dépôt initial, car il peut donner lieu à un projet distinct, selon les choix d'échange et de synchronisation qu'il choisit.

Clone, pull, update & merge

La première chose à faire pour travailler avec un repository de référence est de récupérer les données par un clone (ang. clone ) dans son propre repository. Si on l'a déjà fait voilà un moment et que l'on n'est pas certain d'avoir les dernières versions, il faut alors le vérifier et, le cas échéant, les récupérer, ce qui modifiera les données dans notre propre dépôt, on appelle cette opération un pull (ang. tirer). Une fois cela fait, on peut synchroniser les données que l'on a en local avec son dépôt : un update (ang. mise à jour).
Si des fichiers ont été modifiés des deux côtés, le système refusera de faire cela et proposera plutôt un Merge (ang. fusion, “comparer” sur BB). A priori cela se fera également automatiquement, tant que ce sont des lignes différentes qui auront été modifiées au sein d'un même fichier. Dans le cas contraire, il vous sera proposé manuellement de faire un choix ou de choisir comment synthétiser les deux modifications en une.

Commit & push

Lorsque l'on a réalisé un certain nombre de modifications sur ses fichiers locaux, il faut les enregistrer sur son repository BitBucket. Pour cela, on fait un commit (ang. envoi, livraison), qui va copier en vérifiant si un merge ne serait pas préférable si il constate que des changements ont été fait également dans le repository (par le biais d'un pull récent par exemple). On indique généralement à cette occasion quels fichiers et lignes ont été modifiés, ou de très synthétiques commentaires.
Une fois ses données dans son repository, on peut faire un push (ang. pousser, “demande d'ajout” sur BB) pour que ses modifications soient acceptées par le repository du projet initial. Dans la cas probable où des fichiers y auront été modifiés depuis votre dernier pull, il faudra sûrement faire un pull/merge pour que cela soit possible (et donc un update de vos fichiers locaux également).

Mercurial

Un tutoriel sur l'utilisation de Mercurial est disponible ici, en français : https://www.mercurial-scm.org/wiki/FrenchTutorial.

Un guide sur les Branches dans Mercurial, en anglais : A Guide to Branching in Mercurial.

Se créer son repository sur Bitbucket et y placer les données

Il faut tout d'abord se créer un compte (gratuit) sur BitBucket pour pouvoir créer son propre repository.
Toutes les indications sont données sur http://www.bitbucket.org/ pour s'inscrire. Une fois cela fait, on obtient un repository vide :Page sans aucun  code

Suite à venir, en cours…

Il existe ensuite plusieurs méthodes pour synchroniser ses fichiers avec le repository maître du projet, parmi elles on distingue TortoiseHg, un outil graphique disponible sous Windows et GNU/Linux (et bientôt Mac).

Installation de Tortoise Hg

Il existe dans les dépôts de binaires Debian : tortoisehg et/ou tortoisehg-nautilus (dépendent de Mercurial).
Sinon on trouve des explications sur la page de download du projet.

Git

Git est un autre système de gestion de version. Il n'est pas utilisé pour Khaganat actuellement, mais le connaître peut s'avérer utile.

Voir l'article complet.

CC Attribution-Share Alike 4.0 International Driven by DokuWiki
fr/recuperer_les_donnees.1451465526.txt.gz · Dernière modification : 2021/12/03 19:18 (modification externe)

Licences Mentions légales Accueil du site Contact