Gestion du code source avec Git
On this page... (hide)
1. Introduction
Git permet à plusiurs personnes de travailler simultanément au développement de code. Vous pouvez accéder à beaucoup plus d'informations au sujet de Git (en anglais), ou télécharger le code depuis la page d'accueil.
Pour les détails d'utilisation avec LyX (au cas où vous souhaiteriez contribuer au code), voyez nos pages wiki.
Il reste quelques modules actifs utilisant l'ancien SVN, voyez ici.
2. Dépôt Git de LyX
- lyx.git
- Le code source de LyX est hébergé dans ce dépôt. Le développement de la future version majeure de LyX se trouve dans une branche « master » (maîtresse) et les versions mineures (de maintenance) sont développées dans des branches comme « 2.0.2 ». La prochaine version stable se trouve dans la branche la plus récente. Du fait d'anciens usages, nous appelons quelquefois la branche maîtresse « trunk » et la branche de maintenance simplement « branch ».
Avec Trac, vous devez utiliser le menu déroulant « Explorer » pour choisir la branche que vous voulez parcourir.
Le contenu de la page d'accueil de LyX qui n'est pas en wiki (e.g. les Nouveautés et les Annonces), la section des téléchargements du wiki et les dictionnaires/thesauri sont dans des dépôts indépendants Git différents.
3. Navigateur des sources
Lorsque vous utilisez Git, vous pouvez télécharger un module entier à l'aide d'une seule commande. Si vous désirez consulter un seul fichier, vous pouvez utiliser le navigateur de sources Trac. Trac et Gitweb sont des applications qui permettent, parmi d'autre fonctionnalités, de parcourir un dépôt Git et d'afficher les différences entre versions, de consulter les fichiers journaux et autres.
Probablement, cependant, vous souhaitez plutôt télécharger un dépôt Git. Si c'est la cas, poursuivez la lecture.
4. Clonage anonyme Git
Depuis le répertoire où vous souhaitez placer une copie locale des sources, exécutez :
git clone https://git.lyx.org/repos/lyx.git
Ceci créera un répertoire lyx
et y téléchargera de nombreux fichiers : une copie neuve nécessitera environ 800MB; cependant, en fonction de l'interface que vous compilerez, vous aurez besoin de beaucoup plus d'espace pour la version compilée, jusqu`à 2GB. L'ancien protocole (beaucoup plus rapide mais moins sécurisé) git clone git://git.lyx.org/lyx
fonctionne toujours et est également la seule façon de récupérer plusieurs dépôts du serveur git, sauf si vous êtes développeur.
Vous pouvez passer à la branche de maintenance via git checkout 2.4.x
de l'intérieur du répertoire lyx
.
Si votre connectivité est lente, le téléchargement initial de 1Gb peut être trop long. Nous proposons des miroirs du clone initial, les détails sont ici.
5. Après le premier téléchargement
Si le code à été mis à jour dans le dépôt, allez (cd
) dans le répertoire lyx
et tapez :
git pull
Ceci va comme par magie télécharger ou mettre à jour uniquement les fichiers qui ont été ajoutés ou modifiés, économisant beaucoup de temps pour vous (et pour le serveur).
Si vous désirez seulement chercher ce qui a changé dans votre copie locale par rapport à celle du dépôt, tapez :
git status
6. Compilation des sources
Si vous voulez compiler et exécuter les versions de développement, les choses sont un peu plus compliquées que pour les versions publiées par fichiers d'archive, car vous aurez besoin d'applications additionnelles comme automake
, autoconf
, et gettext
.
Sous Linux suivez simplement les instructions du fichier INSTALL
(ça ressemble beaucoup à la séquence de commandes habituelles ./autogen.sh
, ./configure
, make
, et make install
).
Sinon vous pouvez consulter les instructions dans les fichiers INSTALL.Win32/MacOSX
.
7. Modification des sources
Nous encourageons fortement toute impulsion créatrice de votre part. Correction de bugs, documentation et nouvelles fonctionnalités seront toujours examinées avec soin, et seront acceptées sous réserves d'exceptions. Les nouvelles fonctionnalités seront rarement acceptées pour le version stable en cours.
Si vous désirez proposer de modifications, ce sera plus facile pour tous de modifier les derniers fichiers Git plutôt que la version stable. Voici un bref aperçu des opérations à effectuer :
- récupérer la dernière version du code source en exécutant
git pull
( un patch applicable à des sources anciennes sera beaucoup plus difficile à appliquer, et donc très probablement ignoré) ; - modifier les fichiers ;
- exécuter
git diff > mypatch.diff
pour créer un patch ; - envoyer le patch à la liste de messagerie des développeurs.
8. Accès en écriture via ssh
Si vous en venez à créer de nombreuses modifications que l'équipe LyX intègre au code, vous pouvez vous voir accorder un accès Git. Dans ce cas, votre vie peut être simplifiée. Voyez les informations détaillées dans notre wiki.
9. Branches Git
Le développement principal stable de LyX se fait dans les branches Git. Si cela vous intéresse de contribuer au développement ou de tester les progrès dans ces branches, vous pouvez télécharger une copie par une commande du style
git checkout 2.3.x
ou
git checkout master
dans un dépôt déjà cloné.
Nom de la branche | Gestionnaire de version | Mainteneur | État | Commentaire |
master (trunk) | RG Heck | instable | Branche maîtresse | |
branch 2.4.x | RG Heck | RG Heck | stable | Stable 2.4 series |
branch 2.3.x | S Kostyshak | RG Heck | stable | Stable 2.3 series |
branch 2.2.x | S Kostyshak | RG Heck | stable | Stable 2.2 series |
branch 2.1.x | VF Ravesteijn | RG Heck | stable | Stable 2.1 series |
branch 2.0.x | P Sanda | RG Heck | stable | Stable 2.0 series |
branch 1.6.x | JMatos | JSpitzm | stable | Stable 1.6 series |
branch 1.5.x | JMatos | JSpitzm | stable | Stable 1.5 series |
branch 1.4.x | LGBjønnes | JMarc | stable | Stable 1.4 series |
branch 1.3.x | JMarc | stable | Stable 1.3 series | |
branch 1.2.x | LGBjønnes | JMarc | stable | Stable 1.2 series |
branch 1.1.6 | JMarc | stable | Stabilizing of 1.1.6 |