Cuando comenzamos a involucrarnos en el mundo de la programación, sin importar la plataforma (Arduino, PIC, AVR, etc.), nos encontramos que es necesario llevar un control del código. Es decir, hacer más eficiente nuestro trabajo y cometer menos errores llevando un control de versiones.
Vamos a utilizar GIT y GitHub para almacenar los repositorios remotos. Pueden leer más sobre GIT en Wikipedia.
El primer paso es instalar GIT en nuestro sistema, en Debian/Ubuntu y derivados basta con escribir en la terminal:
sudo apt-get install git
Ahora es el turno de configurar nuestros datos de acceso a GitHub. Utilizamos los siguientes comandos:
git config –global user.name «nuestro_nombre_de_usuario»
git config –global user.email «nuestro_email»
Creación de repositorios:
Vamos a trabajar con repositorios donde almacenaremos nuestro código, tanto de forma local como remota. Ejecutamos el siguiente comando para crear una carpeta local:
git init MiRepo
Después de escribir el comando anterior en la terminal, crearemos la carpeta «MiRepo». Dentro de ella tendremos una subcarpeta «.git» que hace que «MiRepo» sea reconocido como un repositorio local de Git.
Es una buena practica crear un archivo de texto README para describir el contenido del repositorio.
Agregar archivos del repositorio a un índice:
Es necesario indexar todos los archivos contenidos en el repositorio local antes de subirlos a un repositorio remoto. Este índice contendrá los archivos nuevos así como los cambios a los archivos existentes en el repositorio local. Para agregar los archivos al índice debemos usar el comando:
git add ARCHIVO
El comando «git add» se puede utilizar para agregar cualquier número de archivos y carpetas al índice. Para agregar todos los cambios, sin especificar el nombre de los archivos, es posible ejecutar «git add .» (con un punto al final).
Es posible dejar un registro de estos cambios haciendo un «commit». Esto significa que ya se ha terminado de agregar o modificar archivos y que los cambios pueden ser subidos al repositorio remoto de Github. Para ello, hay que ejecutar el siguiente comando:
git commit -m «mensaje»
Creación de un repositorio en GitHub:
Los nombres de los repositorios, tanto locales como remotos, deben ser los mismos. Iniciamos sesión en Github y hacemos clic en el signo (+) en la esquina superior derecha de la página. Seleccionamos la opción «crear nuevo repositorio». Una vez hecho esto se creará el repositorio y será posible subir el contenido del repositorio local en el repositorio GitHub. Para conectarse al repositorio remoto en GitHub hay que ejecutar el comando:
git remote add origin https://github.com/user_name/MiRepo.git
Empujar archivos del repositorio local al repositorio remoto:
Empujamos el contenido del repositorio local hacia el repositorio remoto, mediante el comando:
git push origin master
Esto subirá todo el contenido del repositorio local a GitHub (repositorio remoto).
Creación de una rama (branch):
Cuando queremos corregir errores o agregar nuevas funciones, lo ideal es crear una rama (branch) o copia del código de modo que puedan realizar commits en forma separada, sin afectar el proyecto original. Luego, cuando hayan terminado pueden fusionar esta rama de vuelta en la rama principal (master). Para crear una nueva rama escribimos el comando:
git checkout -b MiRama
Una vez realizados los cambios, hay que agregarlos al índice de la rama y hacer el commit correspondiente:
git add .
git commit -m «cambios en MiRama»
Luego, hay que volver a la rama principal y tomar los cambios realizados en mirama:
git checkout master
git merge MiRama
Finalmente, hay que borrar MiRama (ya que los cambios fueron incorporados en master):
git branch -d mirama
Y subir master a Github:
git push origin master
Por último les dejo mis repositorios en GitHub para que revisen a voluntad.