Git el sistema de control de versiones. Empezamos …

Contenidos de la página

Lo primero en Git

Lo primero que tenemos que comprobar es si tenemos Git en nuestro equipo. Podemos comprobarlo facilimente mediante los siguientes comandos:

$ git 

$ git --version

Descargar e instalar Git

En caso de no tener instalado git lo podemos descargar de los siguientes enlaces:

Aquí git para OSX

Descargaté git para Windows

Como no también git para Linux

Una vez instalado en nuestro equipo Git volvemos a realizar una comprobación con el primer comando para comprobar de que está correctamente instalado en nuestro equipo.

$ git --version

Comandos linux

Realizada la comprobación podemos empezar a crear nuestro proyectos de código, así nos iremos a nuestra consola y realizaremos la creación del directorio o carpeta que lo contendrá mediante la siguiente secuencia de comandos:

$ mkdir nombre_carpeta_proyecto

Nos colocaremos dentro de nuestra carpeta mediante el siguiente comando:

$ cd nombre_carpeta_proyecto

Una vez dentro ya podemos iniciar nuestro proyecto con el comando $ git init

Otra forma de crear un proyecto es directamente desde un repositorio. Así que a continuación vamos a reproducir como será la creación de un repositorio desde Github. 

Nota: Si no tienes cuenta en Github es necesario que te des de alta en este servicio gratuito para poder alojar tus proyectos. Existen otros “repos” como Gitlab y Bitbucket pero en este caso vamos a utilizar Github.

Creando nuestro primer repositorio en Github

Una vez creada la cuenta el proceso para crear un nuevo repositorio es el siguiente:

Iniicar-proyecto-en-Github-1024x421 La guia imprescindible de Git

Apretamos el botón Start a project y nos enviará a la página web de nuestro nuevo proyecto.

Iniicar-proyecto-en-Github-1024x421 La guia imprescindible de Git

¿Público o privado?

Podemos elegir entre las opciones Pública y Privada, recordando que la opción Privada es de pago:

Iniicar-proyecto-en-Github-1024x421 La guia imprescindible de Git

Nos ofrece la opción de crear un archivo README.md que podemos completar con un simple Check y nos creará el archivo correspondiente.

Iniicar-proyecto-en-Github-1024x421 La guia imprescindible de Git

Gitignore

Podemos incluir el archivo gitignore en nuestro repo e incluir los archivos que queremos que este repositorio ignore. Aunque lo más recomendable para esta acción es consultar la web de https://gitignore.io . El proceso para crearlo en nuestra carpeta es fácil,

Simplemente con el comando $ tocuh .gitignore ya tendríamos realizada nuestro archivo correspondiente. En el caso de sistemas operativos que nos permitan la creación de este tipo de archivos se puede crear el archivo sin el punto y luego colocarlo con el comando

$ mv gitignore .gitignore

También tenemos la opción de colocar nuestra propia licencia en el repositorio:

Iniicar-proyecto-en-Github-1024x421 La guia imprescindible de Git

Iniicar-proyecto-en-Github-1024x421 La guia imprescindible de Git

Clonando

Una vez creado nuestro repositorio podemos clocarlo localmente en nuestro equipo de la siguiente manera:

Iniicar-proyecto-en-Github-1024x421 La guia imprescindible de Git

En el caso de optar por no elegir ningún tipo de licencia ni de archivo el procedimiento para crear nuestro repo es el siguiente:

Iniicar-proyecto-en-Github-1024x421 La guia imprescindible de Git

Comandos a tener en cuenta

Los comandos que deberíamos ejecutar nos vienen indicados en la propia pantalla:

Iniicar-proyecto-en-Github-1024x421 La guia imprescindible de Git

Mirando nuestros archivos

Como vemos podemos optar por la creación de proyectos desde nuestro equipo o desde el repositorio de Github, dos opciones que nos permiten mucha versatilidad en nuestra elaboración de proyectos. En la siguiente imagen mostramos los archivos que se encuentran en nuestro equipo:

Iniicar-proyecto-en-Github-1024x421 La guia imprescindible de Git

Recuerda que puedes contar cualquier repositorio con el siguiente comando:

$ git clone /path/to/repository

Si tulipas un servidor que necesita claves:

$ git clone [email protected]:path/to/directory

Flujo de trabajo en git

En git nos encontramos con diferentes áreas de trabajo a la hora de realizar nuestro código:

Iniicar-proyecto-en-Github-1024x421 La guia imprescindible de Git

– Working directory: es el área de trabajo local, donde tenemos nuestros archivos en Local, en nuestro equipo.

– Staging area: un area virtual que nos permite tener un punto intermedio entre el Working Directory y nuestro Repositorio Local.

Desde nuestro Local repositorio podemos enviar nuestro trabajo al Remote repositorio, en el caso de este artículo a Github.

Flujo de trabajo del Working directory al Staging area:

El flujo de trabajo que podemos realizar en este apartado es el siguiente:

$ git add [Nombre del archivo] Nos envía nuestro trabajo desde el Working Directory al Staging Area

$ git commit -m “Nombre del Commit” Le podemos poner un nombre a este trabajo realizado para tener una referencia en nuestro código

Con este último comando le ponemos un título que será el HEAD en este mundillo de GIT.

Enviando los cambios a un repositorio remoto.

Los comandos utilizado para enviar a un repositorio remoto son los siguientes:

$ git push

$ git push origin master

$ git remote add origin server

Si todavía no has clonado un repositorio y quieres conectarlo a uno existente, en nuestro ejemplo en Github, deberás incluir este último comando, incluyendo

como server la url correspondiente a ese reposotorio:

Iniicar-proyecto-en-Github-1024x421 La guia imprescindible de Git

Recomendamos para empezar que la conexión se haga por HTTPS.

Las ramas (branch)

Las ramas son utilizadas para crear código desde una base común que luego posteriormente se incluirá a la parte central de nuestro código o también conocida como MASTER.

1. Crear una rama y posicionarte en ella.

$ git checkout -b [NOmbre de la rama]

2. Moverte a una rama en concreto

$ git checkout [rama]

3. Borrar una rama

$ git checkout -d [NOmbre de la rama]

4. Debemos enviar la rama al repositorio remoto si queremos compartirla

$ git push origin [Nombre de la rama]

Actualizando y fusiuonando

Si queremos actualizar al commit más nuevo, es decir, si queremos que nuestro Working Directory esté actualizado antes de comenzar nuestro trabajo debemos realizar una actualización del código:

$ git pull

Mergeando

Para fusionar el trabajo de una rama a otra debemos colocarnos en la rama que queremos que reciba el trabajo de fusión y realizar esta secuencia:

$ git checkout [rama que recibe la fusión]

$ git merge [rama a fusionar]

Recuerda realizar tu subida al Staging Area con los siguientes comandos:

$ git add [archivo]

$ git commit -m “Nombre del commit”

Si tienes dudas sobre tus archivo puedes comprobarlo con el comando git diff.

$ git diff [rama de origen] [rama que fusiona]

Etiquetas

Para cada nueva versión de nuestro software podemos crear etiquetas, estas etiquetas las podemos incluir con el comando git tag.

$ git tag 2.0.0 1h3b5c7

Para poder realizar los cambios y otras acciones que nos obligan a ver los logs, vamos a tener que hacer uso de dos comandos que nos pueden ayudar con varias acciones en git:

$ git log

$ git reflog

Cualquiera de estos comandos nos da por pantalla el flujo de trabajo con una numeración para cada commit, en el ejemplo 1h3b5c7 y sería como un número de identificación de cada commit.

Recuerda que también puedes borrar tags.

$ tag -g [nombre del tag]

Y si algo va mal

En el caso de que cometamos algún tipo de error en nuestro proceso de creación de código, podemos hacer uso de comandos que rectifiquen esos errores:

Si queremos cambiar el código que hemos enviado al “stagin area” devolviendo nuestro trabajo al working directory debemos usar el siguiente comando:

$ git checkout —[nombre del archivo]

Podemos deshacer los cambios que tenemos en nuestro Working Dirtectory con un comando mas:

$ git reset —hard origin/master

Clientes gráficos para manejar Git.

Gitkraken

SourceTree

Nuestro resumen:

Iniicar-proyecto-en-Github-1024x421 La guia imprescindible de Git

Gracias @kasappeal

Interacciones con los lectores

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Acerca de David Moya

Apasionado de la Seguridad Informática, aprendiendo en todo momento y profundizando en el mundo web y en el posicionamiento en buscadores.

Share This