Proyecto Fin de Carrera

Robótica, software y telecomunicaciones.

Subir un componente al repositorio de RoboComp

Hasta ahora en este blog sólo había hablado de bajar componentes desde el servidor de RoboComp, hoy trataré el tema de subir nuestro nuevo componente.

En principio uno podría temer subir cambios al repositorio y estropear algo sin querer, pero en realidad esto no es un gran problema gracias a la gestión de versiones de Subversion, ya que se pueden revertir los cambios en cualquier momento, a pesar de todo, siempre es bueno poner atención cuando subimos estos cambios.

Lo primero que necesitamos es tener una cuenta en SourceForge, ya que RoboComp está alojado en dicha forja de software. El registro en SourceForge es gratuito y nos ofrece una serie de servicios que ya comenté anteriormente.

El siguiente paso es obtener permisos de escritura en el servidor con nuestra cuenta de usuario, algo tan sencillo como contactar con los responsables de RoboLab y solicitar dicho permiso.

En principio lo ideal sería añadir nuestro componente tras crearlo con la herramienta componentGenerator, para ello nos desplazamos hasta el directorio robocomp/Components/RoboLab/Experimental y ejecutamos el siguiente comando:

svn add ./miComponenteComp/

Nos pedirá la clave de nuestro usuario del sistema, tras añadirla nos pedirá el usuario y contraseña de nuestra cuenta en SourceForge, y nos saldrá un mensaje en el que nos indica que los nuevos archivosahora son versionados, esto es, gestionados por el control de versiones de Subversion.

¿Y qué pasa si no hemos añadido nuestro componente desde un principio? Pues en ese caso debemos eliminar algunos archivos y directorios temporales antes de ejecutar el comando svn add, esos archivos temporales son los siguientes:

  • miComponenteComp/CMakeCache.txt ->Como ya anoté en una entrada anterior es necesario eliminar ese archivo antes de hacer » cmake .» tras modificar el CMakeLists.txt.
  • *.moc -> Ya hablé de los archivos moc, esos meta-objetos que pueden darnos un quebradero de cabeza.
  • Los binarios en miComponenteComp/bin/ -> no es necesario borrar los bash scripts *.sh, sólo los binarios. Normalmente los binarios binarios de robocomp no tienen extensión y sólo es uno con el nombre miComponente.
  • Los directorios miComponenteComp/__ -> son directorios temporales, aún no sé muy bien su utilidad o función durante la compilación.
  • Los archivos CMakeFiles de los directorios miComponenteComp/ y miComponenteComp/src/ -> al igual que con los directorios anteriores, aún no sé mucho sobre ellos, pero la recomendación que me han hecho es eliminarlos antes de añadir para que no queden versionados, y yo os transmito la recomencación.

Pero todo esto es únicamente necesario para añadirlo la primera vez, una vez que nuestro componente esté en el repositorio simplemente tenemos que subir los nuevos cambios ejecutando el siguiente comando desde el directorio de nuestro componente:

svn ci

14 May 2011 Posted by | all | , , , | Deja un comentario

Actualizar Robocomp

Como el proyecto Robocomp está en contínuo desarrollo, y seguramente tengas que utilizar herramientas que están en fase experimental, siempre será necesario actualizar de vez en cuando, pues puede que obtengas algún error inesperado que se soluciona con una simple actualización.

Para actualizar Robocomp sólo necesitamos abrir la carpeta (directorio principal) en un terminal y ejecutar lo siguiente:

svn up

Se ejecuta la orden anterior porque Robocomp usa Subversion para la contribución simultánea de código y el control de versiones.

Para saber más sobre Subversion puedes ejecutar en una terminal lo siguiente:

man svn

20 septiembre 2010 Posted by | all | , | 2 comentarios