Fr/FlightGear Git

From FlightGear wiki
Jump to navigation Jump to search

Version traduite le 21 décembre 2022

Git est un système de contrôle de versions sollicité par la projet FlightGear afin de stocker tous les fichiers requis pour la construction et l'exécution du simulateur. Cela englobe tous les programmes, les données (par exemple, les textures, les sons), les outils de support, etc. Git trace les mises à jour de chaque fichier tandis que les développeurs du monde entier travaillent ensemble simultanément pour créer de nouvelles versions. La seule exception est le référentiel d'avions officiel FGAddon qui est basé sur Subversion plutôt que sur Git.

Bien que de nouvelles fonctionnalités et ajouts de FlightGear soient en cours de développement, ils sont disponibles auprès de Git avant d'être disponibles dans la version publiée. L'emploi de Git permet aux utilisateurs d'exécuter la version la plus récente possible de FlightGear à partir des derniers fichiers sources, pour expérimenter de nouveaux avions ou d'autres fonctionnalités. Cependant, ce n'est pas un outil pour débutant. L'utilisation de Git peut exposer l'utilisateur à des fonctionnalités instables qui affichent des messages d'erreur désagréables ou font planter l'ordinateur.

Depuis mai 2016, les référentiels sont enregistrés sur SourceForge.

Motivation

En mai 2010, suite à un sinistre matériel qui a affecté les serveurs CVS, le projet FlighGear a changé son système de contrôle de versions, abandonnant CVS au profit de Git. Les avantages de Git par rapport à CVS ont fait couler beaucoup d'encre concernant le projet FlightGear, Parmi les bénéfices, citons :

  • un bien meilleur support pour les branches et les fusions de branches. Ceci est particulièrement important pour créer des versions de correctifs de bogues pour les versions majeures tout en permettant de continuer à travailler sur la prochaine version majeure. C'est également très agréable pour le flux de travail personnel d'un développeur.
  • un chemin plus facile pour soumettre des modifications par les contributeurs et pour les intégrer par les développeurs .
  • une bien meilleure prise en charge des tâches quotidiennes telles que la recherche de modifications dans l'historique du projet, l'affichage des modifications, la division en deux de l'historique du projet pour trouver la source d'origine d'un bogue.

Dépôts et branches

Note  l'avenier se base sur C++17 depuis la dérivation de la branche 2020.3 : jusqu'à présent, cela semble bien fonctionner, nous pouvons utiliser des trucs amusants tels que std::optional, et les surcharges plus agréables de make_shared / make_unique. Avant et depuis la 2020.3, nous utilisions également C++11, avec des lambdas, direct member init et remplaçons progressivement 'typedef' par 'using' depuis des années maintenant, mais dans un processus incrémental : pour le moment, cela ne semble pas se faire d'une manière globale par recherche et remplacement .[1]

Le projet FlightGear est réparti dans les dépôts listés ci-dessous.

Nom Contenu Remarques
simgear SimGear, le moteur de simulation exploité par FlightGear.

Ces référentiels ont les branches suivantes :

  • next: branche actuelle du nouveau développement. Cette branche devrait toujours compiler et s'exécuter, mais diverses choses pourraient être cassées.
  • release/*: contenant les anciennes et (si une branche spécifique a été créée pour eux) les versions à venir.

Les personnes qui ne souhaitent pas contribuer activement au développement C++ sont encouragées à utiliser la branche release/2020.3 car la prochaine branche pourrait subir une rupture importante dans un avenir proche.

Depuis Mai 2016, FGRun est remplacé pat Qt5 launcher.

flightgear FlightGear lui-même.
fgdata Toutes les données (aéronef par défaut, dialogues, sons) dont FlightGear se sert.
fgmeta Méta-référentiel FlightGear contenant les scripts de construction et de configuration pour l'ensemble du projet.
windows-3rd-party Bibliothèques précompilées nécessaires pour faire fonctionner FlightGear sous Windows.
fgrun Le lanceur FGRun pour FlightGear.
fgaddon FGAddon, un référentiel SVN qui détient tous les aéronefs officiels (sauf le Cessna 172P, avion par défaut, et l'UFO).
fgcom FGCom, une application VoIP employée par les contrôleurs en mode multijoueurs pour délivrer les services ATC .
getstart Sources du manuel de démarrage inclus avec le simulateur.
openradar L'application OpenRadar utilisée par les contrôleurs en mode multijoueurs.
sceneryweb Code source et fichiers de configuration pour Mapserver, scenery portal et TerraGear scenery build server.
terragear L'outil de construction de scèneTerraGear
terrafs TerraFS, un outil Linux pour monter à distance le système de fichiers des scènes Terrasync
maclauncher Ancien lanceur FlightGear pour Mac. Obsolète, remplacé par Qt5 Launcher.
fgms Multiplayer server system

Contenu connexe

  • FlightGear Git: splitting FGData, une initiative visant à séparer l'avion du référentiel FGData, afin de réduire sa taille et ainsi d'améliorer l'accès à l'utilisateur/développeur moyen.