El Proyecto OpenGnsys cuenta con un nuevo repositorio Git desde noviembre de 2018, con una copia automática en !GitHub que se actualiza cada hora. En el sistema de incidencias del proyecto se mantiene también el acceso al antiguo repositorio Subversion que se estuvo utilizando hasta esa fecha.
Para el desarrollo y programación de OpenGnsys, se dispone de la siguiente estructura en el repositorio Git:
master
- rama de desarrollo principal con los últimos cambios.NombreRama
- ramas hijas de master
para el desarrollo específico de ciertas características.opengnsys-Versión
- copia de las versiones estables del proyecto.La rama principal master
está organizada según los diferentes componentes del proyecto, con la siguiente estructura de directorios, la cual permite distribuir el trabajo en diferentes grupos coordinados:
server
- servidor de arranque y gestión básica de equipos.repoman
- servicio gestor de repositorios de imágenes.admin
- servicios y páginas del gestor web.client
- distintos tipos de clientes.boot
- generación de imágenes de arranque para los clientes (ogLive).engine
- motor de clonación e instalación de clientes (funciones).installer
- scripts para instalación, actualización, migración, desinstalación, etc.doc
- documentación del proyectoLas ramas de desarrollo deben ser hijas de master
(o de otra rama de desarrollo) y se integrarán en su rama padre mediante una solicitud de integración después de realizar el "rebase" de dicha rama y de resolver en ella los posibles conflictos indicados durante el proceso.