Subido por Diego Mella

Ayudantía 1 Git y Gitlab

Anuncio
Ayudantia 1
Git y GitLab
Sebastián Torrealba
sebastian.torrealba@usm.cl
¿Qué es Git?
Git es un sistema de control de versiones distribuido utilizado
para el seguimiento de cambios en el código fuente y otros
archivos en proyectos de software.
¿Para qué sirve Git?
Control de versiones distribuido
Colaboracion en equipo
Commits e historial
Ramificaciones y fusiones
Seguimiento de conflictos
¿Qué es GitLab?
GitLab es una plataforma completa de desarrollo de software
que proporciona herramientas para gestionar todo el ciclo de
vida del desarrollo, desde la planificación y la colaboración hasta
la construcción, prueba y despliegue de aplicaciones usando Git
¿Cómo usar Git?
Si estamos usando alguna distribucion Linux basada en
Debian/Ubuntu podemos ocupar los siguientes comandos:
sudo apt update
sudo apt install git
¿Cómo usar Git?
Si estamos usando un sistema operativo Windows, podemos
descargar Git en el siguiente enlace:
https://git-scm.com/downloads
Configurar Git en local
Al momento de que subamos algún cambio, el GitLab recibirá
algunos datos, pero estos son los más importantes:
git config --global user.name "Gato Tadeo"
git config --global user.email tadeo@inf.utfsm.cl
Configurar Git en local
Podemos chequear si lo configuramos correctamente con el
siguiente comando:
git config --list
¿Cómo usamos el GitLab de informática?
Cuando queramos hacer cualquier acción sobre un repositorio
remoto, nos pedirá las credenciales, las cuales tenemos que
escribir:
Username for 'https://gitlab.labcomp.cl':
Password for 'https://tadeo@gitlab.labcomp.cl':
Uso básico de Linux
Linux tiene algunos comandos útiles que nos permitirán
interactuar con el computador de una forma más sencilla, como
movernos entre carpetas, crear archivos, entre otros.
Lista de comandos básicos
cd carpeta/ : Nos mueve a una carpeta indicada
ls : Nos permite ver los archivos de la ruta actual
cat archivo : Lee el contenido del archivo indicado
history : Nos muestra los ultimos comandos utilizados
rm : Elimina un archivo (-rf para carpetas)
mkdir nombre : Creas una carpeta con ese nombre
Empezando con Git
Para poder crear un repositorio local y agregar los archivos,
asumiendo que estamos dentro de la ruta correcta hay que usar
los siguientes comandos:
git init
git add .
git commit -m "Primer commit"
Manejar un repositorio remoto
En este caso nosotros usaremos el GitLab del departamento de
informática, tenemos que crear un repositorio manualmente (en
la página) y usar el comando clone:
git clone https://gitlab.labcomp.cl/tadeo/miau.git
¿Qué podemos hacer con un repositorio?
Supongamos que creamos un archivo y queremos que Git lo
tenga en observación para nuestros cambios, sólo tenemos que
usar add :
git add nombre_archivo
Para agregar todos los archivos, simplemente ocupamos . :
git add .
Guardar los cambios (localmente)
Quiero hacer un "checkpoint" de mi progreso actual, podemos
hacer un commit:
git commit -m "grrr, soy Tadeo"
En la practica, normalmente se hace esto:
git add .
git commit -m "Nuevos cambios :3"
Me arrepentí, ¿qué hago?
Supongamos que queremos borrar todo lo que hemos hecho y
estar en el punto del ultimo commit, esto es muy sencillo y solo
es un comando:
git reset --hard
Esto nos devuelve a la ultima versión subida
Guardar los cambios (remoto)
Ahora queremos subir los cambios al repositorio remoto, donde
todos podemos colaborar, se usa el siguiente comando:
git push
Descargar los últimos cambios
Por ejemplo, si un amigo nuestro modifico el repositorio remoto
y nosotros queremos acceder a los últimos cambios, solo
usamos el siguiente comando:
git pull
En ocasiones podemos ocupar, fetch para obtener los cambios
modificando lo menos posible el repositorio local
git fetch
Ver diferencia de los cambios
Podemos ver que ha cambiado, en comparacion al ultimo
commit, podemos usar:
git diff
E incluso, podemos ver los cambios de las ultimas dos semanas:
git whatchanged --since="2 weeks ago"
Ramas
Al momento solo hemos trabajado en una sola rama, es decir, la
rama principal, pero podemos trabajar en varias ramas al mismo
tiempo, ¿cómo se hace?
Ejemplo de ramas
Crear una rama
Podemos crear una rama que se separe de la principal con un
nombre que nosotros queramos, por ejemplo:
git checkout -b negritausm
Al hacer una rama con este comando, nos moveremos
automaticamente
Moverse a otra rama
Podemos movernos a cualquier rama usando checkout , acá un
ejemplo:
git checkout godzilla
Obviamente, para moverse a la rama principal habria que usar:
git checkout master
¿Cómo puedo combinar dos ramas?
Acá mi recomendacion es hacer un push de la rama que
queremos mezclar, luego, en el GitLab hacemos un pull
request .
Luego de hacer el pull request veremos si existen conflictos, si
existen conflictos, los solucionamos.
En caso de que no existan conflictos, le hacemos merge
manualmente y todos felices
No me puedo acostumbrar a la terminal
Aunque es altamente recomendable usar la terminal en su futuro
estudiantil y laboral. Es una mala costumbre no aprender a usar
la terminal.
De todas maneras, existe GitHub Desktop, que permite hacer
esto con una interfaz grafica:
https://desktop.github.com/
Fin de la
ayudantia
Así es como Tadeo te enseñó
Git
Descargar