Descargar

Manteniendo el Control
Una introducción a git & gitlab.com
Miguel Cantillana Farías
<miguel@ewok.cl>
Temario
Qué es el versionamiento
Programas para control de versiones
GIT
file, staging, commited
.gitignore
Branch & Merge
Gestores de repositorios para GIT
GitLab una alternativa a github
push, pull, fetch, clone, remote.
Demo
¿Qué es el
versionamiento?
SCM
Source Code
Management
Nos permite registrar los cambios realizados
a nuestros archivos de texto
Nos permite acceder a cada registro
histórico para gestionarlo, compartirlo,
administrarlo, editarlo, etc.
Nos permite desplazarnos en la historia
registrada
Programas para control
de versiones
Centralizado vs Distribuido
GIT
Instalación
Windows
1. Entras a http://git-scm.com/download/win
2. Descargas el instalador
3. Seguir los pasos del wizard
Linux
apt-get install git
+ Opiones
Mac
brew install git
+ Opciones
Configuración
git config --global user.name "TU NOMBRE"
git config --global user.email "TU EMAIL"
Working, staging &
repository
Comandos básicos
git
git
git
git
git
git
git
init
status
add
commit
rm
diff
checkout
Demo 1
.gitignore
1. Creamos un archivo .gitignore en la raiz de nuestro
proyecto
2. Agregamos los archivos o comodines a ignorar por GIT
3. Agregamos .gitignore a nuestro repositorio
Ejemplo .gitignore
*.log
.htaccess
sitemap.xml
sitemap.xml.gz
wp-config.php
wp-content/advanced-cache.php
wp-content/backup-db/
wp-content/backups/
wp-content/blogs.dir/
wp-content/cache/
wp-content/upgrade/
wp-content/uploads/
wp-content/wp-cache-config.php
wp-content/plugins/hello.php
/readme.html
/license.txt
https://github.com/github/gitignore
Branch & Merge
Branch
La principal función de una rama en
git es la organización de nuestro
trabajo, es decir:
Útil para desarrollar una nueva
funcionalidad o característica sin
afectar nuestro desarrollo
principal
Para construir flujos de trabajo en
proyectos en productivo con
contantes cambios (hotfixed, QA,
testing)
Para gestionar gestionar los
release o entregables de un
proyecto
Permite crear
$
$
$
$
$
git
git
git
git
git
branch nuevo-branch
checkout nuevo branch
checkout -b nuevo-branch
branch
branch -a
git merge
Gestores de
repositorios para GIT
Primeros pasos
1. Ingresar a https://gitlab.com
2. Crear una cuenta con su email
3. Configurar llaves
Características
Repositorios Privados y
públicos
Soporte para Grupos
ACL
Merge Request
Markdown wikis
Deployment Keys
Web Hooks
Linux/Mac
Windows
## Paso 1 // generamos nuestra llave
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
# Creates a new ssh key, using the provided email as a label
# Generating public/private rsa key pair.
## Paso 2 // respondemos con enter a la pregunta
Enter file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter]
## Paso 3 // puedes agregar una frase al proceso
# de generación de llave, lo dejaremos en blanco
Enter passphrase (empty for no passphrase): [Type a passphrase]
# Enter same passphrase again: [Type passphrase again]
GitLab
Pull, push, clone, forked, remote
Demo 2
Créditos
https://try.github.io/levels/1/challenges/1
https://git-scm.com/book/es/v1
https://librosweb.es/libro/pro_git/
http://git.miguelnieva.com