Tutorial de Git – Aprende Git y GitHub/GitLab de manera fácil, rápida y sencilla – Parte 6

Hola a todos:

En los post anteriores hemos aprendido a utilizar Git como repositorio local y también GitHub como repositorio remoto.

Tras la compra de GitHub por parte de Microsoft hubo desarrolladores que recelosos del papel que pueda jugar Microsoft  con el futuro de GitHub decidieron migrar sus repositorios a GitLab.

Hoy vamos a iniciarnos en esta plataforma:

Al igual que GitHub, Gitlab es un servicio web de control de versiones y desarrollo de software colaborativo basado en Git.

GitLab nació en 2011 como un proyecto dentro de GitHub convirtiéndose en una alternativa a este.

Fue escrito por los programadores ucranianos Dmitriy Zaporozhets y Valery Sizov en el lenguaje de programación Ruby

GitLab tiene la ventaja que permite tener repositorios privados en la versión gratuita.

Lo primero que tenemos que hacer para utilizar gitLab es crearnos una cuenta, para ello vamos a la página de GitLab: https://gitlab.com   y pinchamos en

Seleccionamos la pestaña Register y rellenamos los campos del formulario antes de pulsar el botón Register:

Una vez enviado el formulario te llegará un email a la cuenta de correo que has indicado para que confirmes tu cuenta pinchando en el enlace.

Una vez confirmada tu cuenta ya podemos empezar.

Al logearte en GitLab la primera vez veremos una pantalla como esta:

Podemos crear un proyecto, explorar proyectos publicos al igual que en GitHub y crear un grupo para gestionar un proyecto colaborativo.

Vamos a crear un nuevo proyecto, por lo tanto seleccionamos Create a proyect:

Al proyecto le vamos a llamar holamundo para no perder las buenas costumbres.

Podemos poner una descripción del proyecto si queremos y seleccionamos el tipo de repositorio que queramos: Private(privado), Internal (interno) o Public (público).

Si queremos que sea un proyecto que solo nosotros podamos ver lo dejamos en Private.

Por último accionamos el botón Create project y ya tendremos nuestro repositorio creado.

Si  nos desplazamos por la página hacia abajo veremos que al igual que en GitHub nos muestra los comandos que tenemos que ejecutar para sincronizar este repositorio con un proyecto en nuestro ordenador.

Primero tenemos que configurar nuestro usuario y nuestro email con git config  si no lo hemos hecho.

Como nosotros ya tenemos nuestro repositorio holamundo en nuestro ordenador ya hemos configurado el usuario.

Tenemos tres posibilidades:

Crear un nuevo repositorio vacío, utilizar una carpeta donde ya tengamos un proyecto pero que no esté gestionado todavía por git, o utilizar un repositorio local que ya esté gestionado por git.

En este caso ya tenemos nuestro proyecto holamundo que ya está siendo gestionado por Git y además lo tenemos asociado remotamente a GitHub.

Tenemos que seguir por lo tanto los pasos que indica en “Existing Git repository“.

Lo primero que tenemos que hacer es situarnos en la consola de comandos dentro de la carpeta de nuestro proyecto.

Ahora renombramos el origin y lo llamamos old-origin, recordad que en origin ahora estaba definido la url de nuestro proyecto en GirHub:

git remote rename origin old-origin

Ahora tenemos que indicar que el origin va a ser la dirección de nuestro proyecto en Gitlab:

git remote add origin https://gitlab.com/tu_usuario/holamundo.git

Recuerda poner la url que indique en tu caso, con tu usuario.

Ahora  nos indica que realicemos un push -u origin –all:

git push -u origin --all

Al ejecutar este comando nos pedirá usuario y contraseña. Debemos poner nuestro usuario y contraseña de GitLab:

Una vez logeados comenzara a subir los archivos de nuestro repositorio.

Por último nos indica que introduzcamos el siguiente comando:

git push -u origin --tags

Con esto ya tendremos todo sincronizado, si refrescamos la página de nuestro repositorio en GitLab vemos que aparecen todos los archivos de nuestro proyecto holamundo:

 

El uso que podemos hacer de GitLab es muy similar al de GitHub.

Si queremos clonar un repositorio de Gitlab en nuestro ordenador solo tenemos que copiar la url de nuestro proyecto y  utilizar el comando git clone como vimos en la parte de GitHub por ejemplo.

Vamos ha hacer una prueba:

Primero vamos a crear una carpeta en nuestro equipo donde clonaremos el repositorio, la llamaremos por ejemplo HolaMundoGitLab:

Ahora copiamos la url de nuestro repositorio en GitLab:

Ahora desde el terminal nos situamos en la carpeta que acabamos de crear y al igual que haríamos con un repositorio de GitHub utilizamos el siguiente comando:

git clone https://gitlab.com/reviblog/holamundo.git

Al hacer esto  dentro de nuestra carpeta se habrá creado la carpeta holamundo con el contenido de nuestro repositorio.

Fork

Al igual que GitHub, GitLab nos permite hacer un fork de un repositorio, como vimos en GitHub, un fork es una copia exacta de un repositorio para poder hacer modificaciones del repositorio original sin afectar a este.

En GitLab tambien puedes encontrar un repositorio público de un proyecto que te resulte interesante y realizar cambios en este si afectar al original.

Cuando accedes a la página principal de GitLab te da la opción de explorar repositorios públicos:

Seleccionamos un proyecto publico que nos interese y para tener una copia en nustra cuenta de GitLab solo tenemos que pulsar el botón fork:

Nos pedirá que seleccionemos el namespace para hacer un fork del proyecto:

Seleccionamos el nuestro y después de unos segundos o algo más de tiempo dependiendo de la envergadura del proyecto tendremos una copia exacta que podemos modificar a nuestro antojo:

Al igual que en GitHub podemos hacer un pull request para solicitar la integración de los cambios que hayamos realizado en el proyecto original, en GiLab debemos solicitar un Merge request.

En el menú lateral izquierdo encontraremos la opción para realizar un Merge Request:

Después debemos seleccionar la rama donde queremos hacer el merge:

Después pulsamos en el botón “Compare branches and continue” y se mostrará un formulario donde podemos describir el merge que vamos a realizar.

Una vez rellenado el formulario pulsamos en el botón “Submit merge request” para enviar la petición.

Wiki

Gitlab nos provee también de una Wiki donde podemos documentar nuestro proyecto y añadir toda la información que consideremos relevante al respecto.
Desde el menú lateral izquierdo podemos acceder a la Wiki y crear nuestra primera página:

Añadir miembros al proyecto

Podemos invitar a otros usuarios a participar en nuestro proyecto, por ejemplo si somos un equipo de varias personas trabajando en un proyecto se puede autorizar a diferentes usuarios para que puedan acceder a el.

Para ello en el menú lateral de la izquierda en la parte de abajo selecionamos Settings -> Members:

Al empezar a escribir el nombre del usuario en el campo Select members to invite aparecerán sugerencias de usuarios que coincidan con lo que estamos escribiendo hasta que veamos en usuario que nos interesa.

Después en  Choose a role permission seleccionamos el tipo de rol que va a tener el usuario, pudiendo elegir entre Guest, Reporter, Developer y Maintainer.

Dependiendo del tipo de rol el usuario tendrá diferentes permisos respecto al repositorio:

Action Guest Reporter Developer Maintainer Owner
Create new issue
Create confidential issue
View confidential issues (✓)
Leave comments
See related issues
See a list of jobs
See a job log
Download and browse job artifacts
View wiki pages
Pull project code
Download project
Assign issues
Assign merge requests
Label issues and merge requests
Create code snippets
Manage issue tracker
Manage labels
See a commit status
See a container registry
See environments
See a list of merge requests
Manage related issues [STARTER]
Lock issue discussions
Lock merge request discussions
Create new environments
Stop environments
Manage/Accept merge requests
Create new merge request
Create new branches
Push to non-protected branches
Force push to non-protected branches
Remove non-protected branches
Add tags
Write a wiki
Cancel and retry jobs
Create or update commit status
Update a container registry
Remove a container registry image
Create/edit/delete project milestones
Use environment terminals
Add new team members
Push to protected branches
Enable/disable branch protection
Turn on/off protected branch push for devs
Enable/disable tag protections
Rewrite/remove Git tags
Edit project
Add deploy keys to project
Configure project hooks
Manage Runners
Manage job triggers
Manage variables
Manage GitLab Pages
Manage GitLab Pages domains and certificates
Remove GitLab Pages
Manage clusters
Edit comments (posted by any user)
Switch visibility level
Transfer project to another namespace
Remove project
Delete issues
Remove pages
Force push to protected branches
Remove protected branches
View project Audit Events

Esta tabla esta sacada de la documentación oficial de gitlab, para saber más sobre los permisos de usuario puedes visitar el siguiente link: https://gitlab.com/help/user/permissions

Eliminar un repositorio

Si queremos eliminar un repositorio debemos acceder en el menú lateral izquierdo y seleccionar Settings – General  y en General project pulsar el botón Expand

En General project nos desplazamos hasta el final de la página y en Advanced pulsamos el botón Expand. Nos desplazamos una vez más hasta el final de la página para encontrar el botón Remove project.

Al pulsar el botón Remove project nos pide introducir el nombre del proyecto para confirmar la eliminación.

Conclusión:

A lo largo de este tutorial hemos aprendido a utilizar Git para crear nuestros repositorios locales y llevar un control de versiones a través de esta potente herramienta. También hemos visto como trabajar con repositorios remotos con una introducción a dos de las plataformas basadas en Git mas utilizadas, GitHub y GitLab.

Espero que os sea de utilidad.

En el siguiente enlace tienes el índice para acceder al resto de entradas de este tutorial:

Un saludo, y si aún no lo has hecho no olvides suscribirte a mi blog para no perderte los próximos posts  :-),
 

También puedes seguirme en Twitter en ‎@revigames y no olvides que me ayudas mucho si compartes este post en las redes sociales.

Un comentario en “Tutorial de Git – Aprende Git y GitHub/GitLab de manera fácil, rápida y sencilla – Parte 6

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.