Curso de Linux N12. Misceláneas_04. Repositorio en GitLab de ejercicios en Bash (1)

By rafaelaquino on 8/30/2023

Cordiales Saludos

![12curso_portada.png](Image from post)

El software de control de versiones git, nos acompañará siempre en nuestra carrera como desarrollador.

Sirva este ejemplo para que te adentres dentro de las nociones básicas de git que te permitirán arrancar y tener una visión amplia de su funcionamiento.

No debemos confundir git, sistema de control de versiones con gitLab que es un servicio web basado en git, donde podemos subir nuestros repositorios locales para realizar proyectos independientes o colaborativos.

En este caso realizaré un repositorio de forma local en mi laptop y luego lo vamos a conectar con un nuevo repositorio dentro de GitLab.

Este ejemplo servirá para tener un repositorio de los ejercicios que realizo en Bash y coloco en mi twitter.

Este ejercicio lo podemos hacer de dos maneras:

  1. Realizando el repositorio local y luego lo conectarlo a GitLab.
  2. Creando el repositorio en GitLab y luego lo clonamos en nuestro equipo.

En esta publicación realizaremos la primera forma, donde utilicé una laptop que no tiene instalado git, para que el ejercicio salga completo. Para la próxima publicación realizaremos la segunda forma.

Comencemos.

Se creó un directorio llamado .r y luego se accedió al directorio recién creado. Ejecuté,

git init

lo que permite inicializar git, dentro del directorio .r. Como no está instalado git arroja un error y sugiere como se puede instalar git:

sudo apt install git

Realizada la instrucción anterior queda instalado git en el computador.

![12curso_1.png](Image from post)
![12curso_2.png](Image from post)
Ya instalado **git**, se procede a inicializar el repositorio local con : **git init**. Es importante configurar nuestro usuario y email con: ~~~ git config user.name <"Nombre"> git config user.email <"email"> ~~~

Luego se creó .gitignore y README.md con:

touch .gitignore README.md

Es importante crear estos dos archivos en todos nuestros repositorios. .gitignore nos permitirá controlar los archivos que subiremos al repositorio, funciona indicando cuales archivos no deseamos subir haciendo mención de éstos dentro del archivo .gitignore. Y el archivo README.md permite colocar toda la información del proyecto. Con git config --list se verifica que los datos estén OK.

Así se inicializa nuestro repositorio de forma local.

![12curso_3.png](Image from post)
Ahora pasamos a **GitLab**. Primeramente nos registramos en GitLab o entramos autenticados con Gmail. Esta fue la forma de entrar en este ejercicio, con autenticación del correo **Gmail**.

Una vez dentro de GitLab, se crea un nuevo proyecto: New project.

![12curso_4.png](Image from post)
Luego: **Create blank project**
![12curso_5.png](Image from post)
A continuación nombraremos el proyecto, en esta oportunidad: **hp_bash_ejercicios**. Seleccioné que sea un proyecto público y eliminé la opción de **Inicializar repositorio con un README.md**, porque ya lo hice de manera local en mi computador. Luego en el recuadro azul: **Create project**
![12curso_6.png](Image from post)
Listo, el proyecto se creó de forma efectiva.
![12curso_7.png](Image from post)
A continuación volvemos a nuestra terminal para conectar lo que tenemos en local con el repositorio de **GitLab**. Lo realizamos con la instrucción ~~~ git remote add origen ~~~

Luego con : git status vemos el estado de los archivos recién creados. Como aparecen de color rojo, quiere decir que aun no estan agregados al índix, es decir al staging area. En el staging area, git ya empieza a hacerle seguimiento a estos archivos. Esto se logra con la instrucción

git add .

Observación, me faltó esta captura de pantalla, con la instrucción git add .

![12curso_8.png](Image from post)
Después del **git add .** con la instrucción ~~~ git commit -m "Iniciando proyecto" ~~~ Se guardan los archivos dentro de nuestro repositorio de forma permanente o se actualizan los archivos si fuera el caso.

Con respecto a la instrucción : git switch -c main, nos permite crear una nueva rama denominada main y cambiarnos a dicha rama para realizar nuestro trabajo. Quedando nuestro proyecto con esta sola rama. Cuando se crea un nuevo proyecto se genera automáticamente una rama principal denominada "master". Más adelante profundizaremos este tema, del porque nos cambiamos a un la rama main, porque es tendencia y porque se está realizando en la actualidad.

Por último para subir los archivos (.gitignore y README.md) al repositorio remoto en GitLab lo hacemos con la instrucción

git push -u origen main

Cabe destacar que para próximas actualizaciones y subidas al repositorio lo realizaremos con solo:

git push
![12curso_9.png](Image from post)
Podemos observar los archivos en **GitLab**. Aquí termina el ejercicio.
![12curso_10.png](Image from post)

Para practicar como subir un nuevo archivo, crearemos un script en bash denominado: primero.sh

![12curso_11.png](Image from post)
El script nos arrojará el mensaje: Mi primer Script, y luego la fecha del sistema.
![12curso_12.png](Image from post)
Aquí probamos el script. Con la instrucción: **bash primero.sh** y se ejecuta perfectamente.
![12curso_13.png](Image from post)
Ahora corresponde subirlo a nuestro repositorio. Primeramente con **git estatus** nos aparece en color rojo, lo que quiere decir que no está en el índex, para agregarlo usamos: **git add primero.sh** y al escribir **git status** cambia a color verde, así ya está preparado en el índex.
![12curso_14.png](Image from post)
Luego guardamos el archivo en nuestro repositorio de forma permanente con: **git commit -m "Primer Script en Bash"** y para subirlo al repositorio lo hacemos con la instrucción: ~~~ git push ~~~
![12curso_15.png](Image from post)
Aquí vemos el archivo **primero.sh** agregado al repositorio remoto.
![12curso_16.png](Image from post)
Podemos accesar al archivo **primero.sh** y podemos revisar su contenido.
![12curso_17.png](Image from post)

Hasta aquí el ejercicio de hoy. Sirva esta publicación para despertar tu interés para el estudio en profundidad de Git. Es muy fácil su implementación, tan solo con un poco de practica e investigando podemos dominarlo. En Internet hay mucha información para el conocimiento básico de Git y en la página oficial de Git está un manual de fácil comprensión.

![bannerfundamentos.png](Image from post)

Documentación oficial de Git wikipedia Git Control de versiones GitLab

Todos a practicar, incluyéndome! Nos vemos en la próxima publicación...

--- AVISO: Es importante que nuestra información personal (documentos, imágenes, fotos, etc) estén respaldadas en en otro medio físico o en la nube. No solamente porque estemos haciendo este curso sino como práctica diaria.---

Mi Twitter

Comments (2)

hivebuzz's avatar @hivebuzz 8/30/2023

Congratulations @rafaelaquino! You have completed the following achievement on the Hive blockchain And have been rewarded with New badge(s)

You distributed more than 16000 upvotes.
Your next target is to reach 17000 upvotes.

You can view your badges on your board and compare yourself to others in the Ranking If you no longer want to receive notifications, reply to this comment with the word STOP

To support your work, I also upvoted your post!

Check out our last posts:

Hive Power Up Day - September 1st 2023
HiveBuzz Women's World Cup Contest - Prizes from our sponsors
stemsocial's avatar @stemsocial 8/30/2023

Thanks for your contribution to the STEMsocial community. Feel free to join us on discord to get to know the rest of us!

Please consider delegating to the @stemsocial account (85% of the curation rewards are returned).

You may also include @stemsocial as a beneficiary of the rewards of this post to get a stronger support.