Git es un excelente Sistema de Control de Versiones que en otras palabras permite controlar los cambios a través del tiempo de cualquier tipo de programa que se encuentre en desarrollo.
GitHub viene siendo una especie de hosting para Git en el cual se alojan una gran cantidad de proyectos tanto públicos como privados (este último necesitas tener una cuenta de pago); ha tenido un gran éxito y es empleado por todo tipos de empresas o compañías tan exitosas como Google para subir diferentes proyectos.
1.0 Instalando Git
Antes de instalar Git es recomendable crearnos una cuenta desde la página oficial de GitHub Join GitHub que emplearemos un poco más adelante para configurar Git y en posteriores entradas para sincronizar nuestro proyecto.
Ahora veremos como instalar Git en nuestra máquina; para instalar Git en Fedora ejecutamos en nuestra terminal:
sudo yum install git
Si por el contrario usamos como distribución Linux, Ubuntu, Debian o derivado prueba con:
sudo apt-get install git
2. Primeros pasos con GitHub
2.1 Configurando nuestra cuenta
Una de las primeras cosas que debemos de hacer antes de trabajar con Git en nuestros proyectos es agregar nuestra cuenta y correo electrónico a nuestra instalación de Git que hayamos usado para registrarnos en GitHub a través del comando git config
:
git config --global user.name "cuenta" git config --global user.email "correo@gmail.com"
Para ver las configuraciones que realizamos en el paso anterior podemos emplear el siguiente comando:
git config --list user.name=cuenta user.email=correo@gmail.com core.repositoryformatversion=0 core.filemode=true core.bare=false core.logallrefupdates=true
3 Gestionando los proyectos
Una vez instalado y configurado Git tenemos dos escenarios posibles si queremos integrar Git en nuestros proyectos:
3.1 Inicializar un proyecto nuevo o existente
Para esto debemos inicializar el proyecto con el siguientes comandos:
$ git init Initialized empty Git repository in /home/andres/gittest/.git/
Como veremos en el retorno del comando, esto creará una carpeta oculta llamada .git
(puedes visualizar las carpetas y archivos oculto en Linux a través de la combinación de teclado: Control + h
) que contiene todo los datos necesarios para sincronizar el proyecto.
gittest
contiene nuestro proyecto que puede ser un proyecto Android, PHP, o cualquier otra cosa que no tiene porqué tener una estructura en particular.3.2 Hacernos con un proyecto de los repositorios de GitHub (clonar)
Si queremos trabajar con un proyecto ya existente que esté alojado en algún repositorio de GitHub podemos clonarlo o copiarlo a nuestra máquina para trabajar con:
git clone https://github.com/libredesarrollo/android.git
Para obtener la URL de los proyectos, en GitHub copiala desde:
4 Empezando con el Sistema de Control de Versiones Git
Llegado a este punto, hemos completado las siguientes tareas:
- Instalado Git
- Configurado Git
- Inicializado un proyecto con Git
Ahora podemos empezar a trabajar con el Sistema de Control de Versiones que en otras palabras significa agregar los distintos scripts que forman nuestro programa; por ejemplo agreguemos el típico archivo README.txt:
echo "Algo de texto" > README.txt
Por ahora tenemos un simple archivo que deseamos que Git haga seguimiento:
ls README.txt
Si queremos saber cual es el estado de nuestro proyecto hasta el momento o para determinar el estatus de los archivos debemos emplear el comando git status
y veríamos:
git status Initial commit Untracked files: (use "git add <file>..." to include in what will be committed) README.txt nothing added to commit but untracked files present (use "git add" to track)
Lo que significa que estamos limpio y Git todavía no tiene nada a lo cual realizar un seguimiento hasta que agreguemos nuestro archivo con git add
.
git add
.Entonces debemos especificar que el archivo anterior llamado README.txt sea rastreado por Git o lo que es lo mismo, que Git le realice el seguimiento, para esto empleamos el comando git add <archivo>
.
Para agregar el archivo creado anteriormente:
git add README.txt
También podríamos haber empleado:
git add *.txt
Para agregar todos los archivos nuevos o modificados
cuya extensión sea txt
.
o
git add --all
Para agregar todos los archivos del proyecto que sean nuevos o modificados.
Sea cual sea el comando que ejecutes, el resultado será el mismo para nuestro ejemplo.
Si nuevamente consultamos el estado de nuestro proyecto:
git status On branch master Initial commit Changes to be committed: (use "git rm --cached <file>..." to unstage) new file: README.txt
Lo que significa que el archivo README.txt
está listo para que Git le realice seguimiento y está en espera para ser confirmado con el comando git commit
.
Confirmando los cambios con git commit
Ahora para confirmar que deseamos que el archivo anterior se le realice un seguimiento:
git commit -m "nuestro primer proyecto con git" [master (root-commit) 99cf1ee] nuestro primer proyecto con git 1 file changed, 1 insertion(+) create mode 100644 README.txt
-m
junto con el comando commit
.Ver el histórico de las confirmaciones del proyecto
En otras palabras el log o historial de de todos los commit que se han realizado:
[andres@localhost gittest]$ git log commit 99cf1eef86a66b45f540212a4869c97af245330b Author: XXX Date: Thu Aug 20 11:00:01 2015 -0430 nuestro primer proyecto con git
En nuestro ejemplo solo hemos realizado una confirmación o commit.
Conclusiones
En esta entrada vimos una breve introducción a Git y conocimos que es GitHub; además vimos cómo configurar una cuenta, emplearlo en nuestros proyectos e indicamos a Git que rastree algunos de nuestro archivos; pero todavía faltan varios componentes que veremos en las próximas entradas.
Desarrollo con Laravel, Django, Flask, CodeIgniter, HTML5, CSS3, MySQL, JavaScript, Vue, Android, iOS, Flutter