Archivo

Entradas Etiquetadas ‘svn’

Creación de repositorios GIT para usuarios de svn

Sábado, 31 de diciembre de 2011 2 comentarios

Llevaba mucho tiempo queriendo cambiar todos mis repositorios personales se SVN a GIT, pero no he encontrado tiempo libre para hacerlo hasta ahora. La principal ventaja que me ofrece Git frente a Svn, desde mi humilde punto de vista de usuario, es la posibilidad de hacer rápidos commits en local sin tener que comunicarte con el servidor. Esto nos hará evitarnos esa molesta espera de unos segundillos cuando hacemos los commits, y además fomentará el que hagamos commits más habitualmente y podamos crear una traza más elaborada de los cambios que vamos realizando en cada revisión del repositorio.

Como en muchas otras entradas del blog, esto solo pretende ser una “receta paso-a-paso”. Los detalles podréis buscarlos en la buena documentación que tiene git (recomendado instalar paquete git-doc) o en alguno de los libros o PDFs que dejaré en la sección de enlaces.

Creación del repositorio

Estando en el servidor donde publicaremos nuestro repositorio, nos situamos en la carpeta del proyecto donde está el contenido del mismo y escribimos:

$ git init

Con lo que se creará el directorio .git. Posteriormente añadimos el contenido del proyecto a la historia del repositorio con

$ git add .

Y hacemos el commit

$ git commit -m "Initial version of repository"

Ahora viene el punto crítico con el que más me he tenido que pelear. Una vez dados los pasos anteriores podemos clonar el repositorio desde un equipo cliente, trabajar en local  y luego enviar los cambios realizados por medios de parches al mantenedor del repositorio para que el los aplique en el servidor. Sin embargo, no podemos hacer “push” de los cambios realizados sobre este servidor. Para poder hacer esto hay que crear en el servidor un clon “bare” del repositorio que acabamos de crear:

$ git clone --bare my-repo

Lo que creará un directorio my-repo.git que  será del cual tengamos que clonar desde el lado del cliente para después poder hacer “push” de los cambios que acabamos.

 Clonar, hacer cambios y subirlos al servidor

Desde el lado del cliente clonamos el repositorio bare

$ git clone ruta-a-repo/my-repo.git

Hacemos los cambios necesarios al código y los añadimos con git add. Es importante resaltar que aunque un fichero esté ya añadido al repositorio, si hacemos cambios sobre él, tendremos que indicarlo con git add, para que esos cambios se materialicen en el próximo commit. Para ver que ficheros han sufrido cambios y cuales se harán efectivos en el próximo commit se recomienda usar git status. Y una forma rápida de añadir todos los cambios realizados en ficheros ya añadidos al repositorio es con git add -u.

Una vez indicados todos los cambios, hacemos el commit:

$ git commit -m "Changes XXX"

Podemos hacer tantos commits en local como nos parezca sin tener que establecer comunicación con el servidor. Una vez que queramos subir los cambios realizados al servidor simplemente escribimos

$ git push

Enlaces

Hay multitud de documentación sobre git en la red, pero quizás baste con coger un buen libro y leerlo tranquilamente para conocer algunos de los entresijos de este sistema de archivos distribuido. Aquí podéis encontrar multitud de enlaces a diferentes tipo de contenido. A mi en concreto me ha servido de mucho leerme el libro “Git Internals”, que es un libro breve y conciso. En este otro enlace se muestra un contenido mi parecido al de esta entrada, pero en inglés.

GD Star Rating
loading...
Share
Categories: Internet Tags: ,

Fusión de ramas en subversion (SVN)

Martes, 11 de mayo de 2010 1 comentario

He actualizado la entrada de gestión de repositorios con subversion añadiendo una última sección donde explico el proceso del fusionado de ramas personales con la rama principal de un proyecto. Espero vuestras críticas y comentarios ;) .

I’ve updated the post control version system with subversion adding a new section where I explain the process of merging between personal branches and the main one in projects. I expect your comments ;) .

GD Star Rating
loading...
Share

QtCreator + VIM -> IDE definitiva

Viernes, 17 de julio de 2009 Sin comentarios

qtcreator

En ocasiones me sigo sorprendiendo con mi nivel de frikismo. Y es que casi me da un orgasmo cuando he visto que la nueva versión de QtCreator, entre otras cosas, te permite activar un estilo de edición al estilo VIM. ¿Que quiere decir esto? Pues que podemos disfrutar de una grandísima IDE que integra el uso de las librerías QT junto al lenguaje de programación C++ para realizar aplicaciones gráficas sin tener que abandonar esos atajos de teclado que se han vuelto esenciales para los que hemos caido en las garras del mejor editor de textos existente  (VIM).

Normalmente suelo programar mis librerías con el uso de las autotools y de gvim. Sin embargo, ahora que tengo que realizar una aplicación gráfica, podría seguir trabajando con estas herramientas, pero QtCreator nos permite desarrollar este tipo de aplicaciones casi sin esfuerzo. Dentro de la aplicación viene integrado el QtDesigner para diseñar los formularios, cuenta con una fabulosa integración de la documentación de las librerías Qt, y las funciones de autocompletado son sencillamente espectaculares. Además incluso te permite realizar una gestión de versiones de tus proyectos con las principales herramientas dedicadas a ello: git y svn.

Por supuesto, podemos disfrutar de dicho programa gratuitamente bajo la licencia LGPL. Podéis acceder a la página de descargas desde este enlace. Os recomiendo que si no tenéis mucha experiencia con Qt os bajéis el SDK completo, ya que viene con multitud de ejemplos que podréis visualizar fácilmente desde la misma aplicación.

GD Star Rating
loading...
Share

Examina todas tus revisiones de código con ViewVC

Martes, 9 de diciembre de 2008 1 comentario

Para los programadores de grandes proyectos es fundamental un sistema de control de versiones para gestionar el código, pero trabajar con ficheros en un proyecto grande a partir de uno de esos programas de líneas de comandos se puede hacer tedioso para algunas personas. O peor incluso, los resultados de los comandos carecen de resaltados para ver las diferencias entre ficheros y revisiones. ViewVC es un navegador manejable de visionado de códigos que permite a los usuarios examinar el árbol de código fuente gestionado por CVS o SVN, ver los cambios, comparar revisiones a nivel de fichero o de línea y realizar otras operaciones — Casi cualquier cosa excepto permitir a los usuarios descargar los archivos o actualizarlos.

Leer más…

GD Star Rating
loading...
Share

Gestión de repositorios Subversion (SVN)

Domingo, 7 de diciembre de 2008 7 comentarios

Última actualización 11/05/2010

En esta entrada vamos a ver que es exactamente un sistema de control de versiones (concretamente hablaremos de subversion), como crear repositorios y cómo usarlos. Hay mucha información por internet acerca de cómo manejar todas las funcionalidades de svn, pero quizás no tan integrada y breve como pretendo mostraros a continuación.

Leer más…

GD Star Rating
loading...
Share