Obtención del código fuente con Subversion
On this page... (hide)
1. Introducción
Subversion (SVN) permite a muchas personas trabajar a la vez en el desarrollo de código. Puedes conseguir mucha más información sobre Subversion y/o descargar el código desde su página web. Recomendamos encarecidamente leer la documentación y las FAQ de Subversion.
La gente que pertenezca a la religión GIT, aquí, por favor.
2. Módulos
Hay dos módulos activos en el repositorio actual de Subversion:
- lyx-devel
- Este repositorio aloja el código fuente de LyX. El desarrollo de la próxima edición principal tiene lugar en el tronco y las ediciones secundarias (de mantenimiento) se preparan en las ramas. La próxima versión estable reside en el directorio de la rama más reciente, branches/BRANCH_X_X_X.
- www-user
- En este repositorio hay algunos contenidos de nuestras páginas www (www.lyx.org).
Aunque ya no están en uso, estos se mantienen por su interés histórico:
- lyx-tests
- Este repositorio contiene varios archivos
.lyx
que pueden ser útiles para pruebas. - lyx-1_0_x
- Esta es la antigua rama estable. No se hace más trabajo en ella.
- lyx
- Es la antigua e inestable rama de desarrollo y tampoco se usa ya.
- www-devel
- Solía contener las páginas www de los desarrolladores. Los contenidos se han añadido al subdirectorio
devel
dewww-user
- lyxdoc
- La documentación para LyX 1.3.x se mantiene aquí (en la rama BRANCH_1_3_X) y recogida en el directorio
doc
antes de la publicación. Ya no se usa para el tronco principal, ya que la documentación se ha movido al módulolyx-devel
.
3. Navegador de fuente Trac
Usando SVN puedes descargar un módulo completo con solo un comando. Si quieres ver solo un archivo SVN, considera el uso del navegador de fuente Trac. Trac es una herramienta que permite, entre otras cosas, navegar por un repositorio SVN, y da la posibilidad de echar un vistazo a archivos diffs entre versiones arbitrarias así como leer archivos de registro y demás.
El navegador de fuente Trac para el repositorio SVN de LyX está en la página de inicio de LyX. Lo más probable, no obstante, es que quieras descargar un módulo completo. Si es así, sigue leyendo.
4. Login anónimo SVN
Desde dentro del directorio en el que quieras colocar tu copia local de las fuentes, haz:
svn co svn://svn.lyx.org/lyx/lyx-devel/trunk lyx-devel
Esto creará un directorio lyx-devel
y descargará muchos archivos en él. (Una copia reciente necesitará unos 150MB. Sin embargo, en función de la interfaz que se vaya a compilar, para la versión compilada hará falta mucho más espacio, hasta 800MB).
Por supuesto, puedes poner en su lugar svn co svn://svn.lyx.org/lyx/www-user/trunk www-user
, según el módulo que quieras descargar.
5. Después de la primera descarga
Si se actualiza el código, haz cd
al directorio lyx-devel
y:
svn update
Esto descargará o parcheará mágicamente solo aquellos archivos que se han cambiado o añadido, ahorrándote (y al servidor) mucho tiempo.
Si solo quieres comprobar lo que ha cambiado en tu copia local respecto al repositorio, haz:
svn status
Si quieres comprobar lo que ha cambiado en el servidor, pero aún no actualizado en tu copia local, haz:
svn status -u
6. Compilando la fuente
Solo sigue las instrucciones en INSTALL
, como si hubieras descargado un archivo tar. Para el módulo estable, esto es bastante más apropiado, autogen.sh
, configure
, make
, y make install
.
Si quieres compilar y ejecutar el módulo de desarrollo, las cosas son algo más complicadas que para el módulo de publicación. Vas a necesitar automake
, autoconf
, y gettext
, que pueden descargarse de tu sitio ftp GNU favorito. (Empieza en gnu.org para encontrar una réplica.) Una vez instaladas todas estas cosas, solo debes ejecutar el guión autogen.sh
escrito por Allan Rae, que hará las cosas en el orden correcto, y después te indicará que ejecutes configure
y make
.
7. Cambios en la fuente
Apoyamos firmemente cualesquiera impulsos creativos que puedas tener. Arreglos de fallos, documentación, nuevas características, siempre se analizarán cuidadosamente y serán generalmente aceptadas, con algunas excepciones. Raramente se aceptarán características nuevas para la versión estable publicada. La documentación que no siga los requerimientos del documento DocStyle
no se aceptarán. Aparte de esto, no obstante, ¡nos encanta recibir nuevas contribuciones!
Si quieres proponer cambios a LyX, será más fácil para todos si cambias las últimas fuentes SVN en vez de la última liberación. Aquí hay un rápido resumen de lo que deberías hacer:
- Obtener la última versión de la fuente con
svn update
. Un parche a fuentes antiguas será mucho más pesado de aplicar, y por tanto probablemente ignorado. - Cambia los archivos. (Bien editando en el sitio, bien copiádolos a algún otro lugar, edítalos, y después cópialos dondequiera que mantengas el árbol SVN).
- Ejecuta
svn diff > mypatch.diff
para crear un parche. - Envía el parche a la lista de correo de desarrolladores de LyX.
8. Acceso a escritura mediante ssh
Si estás creando muchos parches que el equipo LyX incorpora al código, se te puede conceder acceso a SVN. En ese caso tu vida se hará aún más fácil. En vez del anterior acceso anónimo, puedes verificar las fuentes con
svn co svn://svn.lyx.org/lyx/lyx-devel/trunk lyx-devel
Después ejecutas un svn commit
para comprobar los cambios en el árbol de Subversion, en vez de crear un parche y enviarlo. La primera vez se te piden el nombre de usuario y la contraseña, que se guardarán para sucesivas sesiones por tu comodidad (esto se puede deshabilitar a petición).
El sitio web de los desarrolladores de LyX y la página Inicio de LyX también están bajo Subversion. Probablemente no son de descarga válida a menos que tengas acceso a escritura, por supuesto. Ambos están en el módulo www-user
.
9. Ramas SVN
El desarrollo principal en LyX se hace en ramas SVN. Si estás interesado en ayudar al desarrollo o con trabajos de prueba en estas ramas, puedes verificar una copia con un comando como:
svn co svn://svn.lyx.org/lyx/lyx-devel/branches/BRANCH_1_6_X lyx-1.6.x
Nombre Rama | Mantenedor | Estado | Comentario |
trunk | JMatos | inestable | Rama principal |
BRANCH_1_6_X | JSpitzm | estable | Rama estable de la serie 1.6 |
Hay además algunas ramas antiguas obsoletas:
Nombre Rama | Mantenedor | Estado | Comentario |
BRANCH_1_5_X | JSpitzm | estable | Rama estable de la serie 1.5 |
BRANCH_1_4_X | JMarc | estable | Rama estable de la serie 1.4 |
BRANCH_1_3_X | JMarc | estable | Rama estable de la serie 1.3 |
BRANCH-1_2_X | JMarc | estable | Rama estable de la serie 1.2 |
BRANCH_1_1_6 | JMarc | estable | Estabilización de 1.1.6 |