- 21/07/2010
- 3:48 pm
- Development , Free Software
GIT is a very useful development tool. With it, anyone can handle a simple and practical way of versioning your work.
Why do I need versioning?
Many times I have past-especially to me, a pretty dull-I return one or more changes to files already saved and closed and I found that I have no way to do it.
With version control or versioning, we have the facility to manage the various changes made in the content, configuration and file properties of a given project. This feature allows us to return to earlier changes, and to facilitate access and distribution of source code by using local or remote repositories.
Why GIT?
GIT is a versioning tool created by Linus Torvalds, developer of the Linux Kernel. Among its benefits over other systems we have versioning is a distributed approach which allows to work with local repositories luegos can be merged with the main repository.
How do I use GIT?
The first thing to do is install it. It is very easy, as is usual in Linux, 'wrote the following in a console with root permissions:
aptitude install git-core
Para comenzar a trabajar, accedemos al directorio principal de nuestro proyecto y ejecutamos los siguientes comandos:
git initCon ésto inicializamos el versionamiento en el directorio raíz del proyecto
git add .Añadimos todos los archivos del proyecto a ser versionados a nuestro repositorio local
git commit -a -m "Mensaje descriptivo de los cambios"
Realizamos la carga de la primera versión de nuestro proyecto
Uso de un repositorio en línea
Existen varios lugares en internet que brindan servicio gratuito para almacenar proyectos de Software Libre bajo la plataforma GIT. Éstos sitios proveen un repositorio dinámico que permite un versionamiento descentralizado, es decir, que varias personas podrían hacer carga y descarga de datos en nuestro proyecto mediante permisología definida y fusión inteligente, facilitando así el trabajo colaborativo entre diferentes personas.
Uno de éstos sitios es Gitorious (también está github ). Para poder hacer uso de los servicios de Gitorious (o github), es necesario que tanto el creador del Proyecto como sus colaboradores se registren. Además, cada cuenta creada debe asignarsele la (o las) llave(s) SSH de los equipos autorizados para publicar o descargar contenido. Para conocer nuestra llave SSH utilizamos el comando ssh-keygen ; el resultado de ésta consulta debe ser ingresado en el apartado “ Manage SSH Keys ”, de la página de tu perfil en gitorious.org.
Comenzando a trabajar
Inicialmente, debemos agregar el repositorio remoto, que para el caso de gitorious, se indica en la página principal del proyecto. Para ello, creamos un alias o nombre para la dirección del repositorio, de la siguiente forma:
git remote add < alias > < dirección >
Por ejemplo:
git remote add origin git @ gitorious.org:miproyecto / mainline.git
Seguidamente, el comando para ejecutar la carga de archivos versionados al servidor es el siguiente (recordar hacer git commit -a antes):
git push < alias > < rama >
En donde rama indica la rama del ciclo de desarrollo al que pertenece esta carga de archivos. La principal es master. Por ejemplo:
git push origin masterProgramación Colaborativa
Otras personas pueden bajar los archivos fuente “clonando” tu repositorio. Para hacerlo creamos una carpeta, digamos “proyecto” y dentro de ella ejecutamos:
git clone < dirección >
Por ejemplo:
git clone http: // git.gitorious.org / miproyecto / mainline.git
Esto descargará los archivos de la rama principal ( master ) a la carpeta donde nos encontremos. Una vez en poder de los archivos fuente, podremos realizar modificaciones y subirlos al repositorio en línea con el comando git push , descrito anteriormente (siempre y cuando tengamos la permisología necesaria del creador en gitorious.org). Ésta actividad podemos repetirla cuantas veces sea necesario.
Es recomendable actualizar los archivos fuente cada vez que se vayan a realizar cambios para evitar discordancias.
Espero que les haya sido útil. Si tienen alguna pregunta, no duden en hacerla.

Menciona tambien a github.com que es otro muy buen sitio de proyectos git. Saludos!
Mencionado, compañero Guerrero
Excelente artículo, me sirvió de base para empezar con GIT. Saludos
Chuletario de git:
http://blog.carlosguerrero.com/index.php/2010/11/guia-cheatsheet-de-uso-de-git-como-sistema-de-versionamiento/