El programa svn
El método de acceso al repositorio más básico y más utilizado es la orden svn.
Para utilizar este método de acceso debemos disponer del programa svn en nuestro sistema. Probablemente nuestra distribución dispondrá de algún paquete para instalarlo. En caso contrario, lo podemos descargar desde la página oficial del proyecto Subversion.
Si estamos empezando a trabajar con este programa, podemos obtener ayuda sobre su uso mediante el parámetro help en la línea de órdenes de la consola:
svn help
También existe un buen libro gratuito sobre el control de versiones con Subversion.
Nota
Por favor, consulta la información contenida en repositorio de KDE para saber dónde está lo que te interesa descargar.
Creando nuestra copia local del repositorio
A lo largo de este artículo supondremos que estamos utilizando una sesión de Konsole para trabajar con la orden svn.
En primer lugar, necesitamos crear una carpeta local de trabajo. Para ello, podemos teclear las siguientes órdenes:
cd ~ mkdir svnroot cd svnroot
Aunque no es necesario, también sería muy conveniente definir una variable de entorno para referirnos al URL base del repositorio, con la idea de ahorrarnos escribir su dirección cada vez que necesitemos acceder al repositorio. Por ejemplo:
export SVNROOT=svn://anonsvn.kde.org/home/kde
Para no tener que crear la variable de entorno anterior cada vez que necesitemos acceder al repositorio de KDE, podemos incluir su definición en nuestro archivo ~/.bashrc personal.
A continuación nos bajamos del repositorio de KDE los archivos necesarios para realizar la traducción del paquete que tengamos asignado (a modo de ejemplo, supondremos que es kdelibs, tanto mensajes como documentación). Para ello teclearemos lo siguiente en la línea de órdenes de Konsole:
- Para /trunk:
svn co $SVNROOT/trunk/l10n-kde4/templates/messages/kdelibs trunk/l10n-kde4/templates/messages/kdelibs svn co $SVNROOT/trunk/l10n-kde4/templates/docmessages/kdelibs trunk/l10n-kde4/templates/docmessages/kdelibs svn co $SVNROOT/trunk/l10n-kde4/es/messages/kdelibs trunk/l10n-kde4/es/messages/kdelibs svn co $SVNROOT/trunk/l10n-kde4/es/docmessages/kdelibs trunk/l10n-kde4/es/docmessages/kdelibs
- Para /branches/stable:
svn co $SVNROOT/branches/stable/l10n-kde4/templates/messages/kdelibs branches/stable/l10n-kde4/templates/messages/kdelibs svn co $SVNROOT/branches/stable/l10n-kde4/templates/docmessages/kdelibs branches/stable/l10n-kde4/templates/docmessages/kdelibs svn co $SVNROOT/branches/stable/l10n-kde4/es/messages/kdelibs branches/stable/l10n-kde4/es/messages/kdelibs svn co $SVNROOT/branches/stable/l10n-kde4/es/docmessages/kdelibs branches/stable/l10n-kde4/es/docmessages/kdelibs
Este paso sólo es necesario cuando se crea nuestra copia local del repositorio. El resto de las veces nos limitaremos a actualizar esta copia local.
Actualizando nuestra copia local del repositorio
Continuando con el ejemplo anterior, para actualizar nuestra copia local del paquete kdelibs, procederemos de la siguiente manera desde una sesión de Konsole:
- Para /trunk:
svn up trunk/l10n-kde4/templates/messages/kdelibs svn up trunk/l10n-kde4/templates/docmessages/kdelibs svn up trunk/l10n-kde4/es/messages/kdelibs svn up trunk/l10n-kde4/es/docmessages/kdelibs
- Para /branches/stable:
svn up branches/stable/l10n-kde4/templates/messages/kdelibs svn up branches/stable/l10n-kde4/templates/docmessages/kdelibs svn up branches/stable/l10n-kde4/es/messages/kdelibs svn up branches/stable/l10n-kde4/es/docmessages/kdelibs
Durante la actualización de nuestra copia local observaremos que al principio de cada línea aparece un carácter que nos informa de la acción que se ha llevado a cabo en los archivos de nuestra copia local. Este carácter puede ser uno de los siguientes:
- A (Added, en inglés). El archivo ha sido añadido a nuestra copia local, donde no existía previamente. Ocurre cada vez que hay un archivo nuevo en el repositorio.
- D (Deleted, en inglés). El archivo ha sido eliminado de nuestra copia local porque había sido borrado del repositorio.
- U (Updated, en inglés). El archivo ha sido actualizado en nuestra copia local.
- C (Conflict, en inglés). Existe un conflicto entre nuestra copia local del archivo y la existente en el repositorio. Para solucionarlo deberemos echar mano de Kompare o de cualquier otra herramienta que nos permita resolver las diferencias entre ambos archivos.
- G (Merged, en inglés). El archivo de nuestra copia local contenía cambios con respecto al que había en el repositorio, y este, a su vez, contiene añadidos que no teníamos en la copia local, pero ambos se han mezclado sin producir conflictos en nuestra copia local.
Equipo de traducción de KDE al español