====== Git ======
===== Instalación =====
Si usamos Windows, debemos instalar git bash para que sea compatible:
{{pasted_image_20230108121910.png|}}
Durante la instalación, se nos mostrará lo que se va a instalar:
{{pasted_image_20230108121919.png|}}
Y ahora tenemos una terminal de Linux con git en su interior:
{{pasted_image_20230108121927.png|}}
===== Configuración Inicial =====
Primero debemos configurar nuestro nombre y correo electrónico:
{{pasted_image_20230108122315.png|}}
{{pasted_image_20230108122318.png|}}
Ahora hay que vincular Visual Studio Code con git, indicando que será nuestro
editor de código por defecto:
{{pasted_image_20230108122327.png|}}
Ahora para comprobar que se haya hecho todo correctamente y para revisar nuestro
archivo de configuración el visual studio code, ejecutamos este comando:
{{pasted_image_20230108122336.png|}}
Y ahora se nos abre el visual studio code automáticamente mostrando el archivo
de configuración:
{{pasted_image_20230108122346.png|}}
Y ahora introducimos un último comando, donde será true si usamos windows, o
será input si usamos mac o linux:
{{pasted_image_20230108122355.png|}}
Voy a crear una carpeta donde trabajaré con los comandos de git:
{{pasted_image_20230108122402.png|}}
Ahora dentro de esta carpeta vamos a inicializar un repositorio, lo cual sería
el primer paso:
{{pasted_image_20230108122409.png|}}
Debemos tener en cuenta que dentro de este directorio se creó un directorio
oculto que se llama .git, si queremos verlo hacemos lo siguiente:
{{pasted_image_20230108122418.png|}}
Dentro de este directorio, si miramos su contenido podremos ver diferentes
archivos y directorios, aquí será donde se almacene la configuración de nuestros
programas y lo que vayamos haciendo:
{{pasted_image_20230108122434.png|}}
Cuando estemos creando un programa y vayamos a subirlo a github, va a haber un
proceso que será el siguiente:
{{pasted_image_20230108122441.png|}}
===== Vincular un Repositorio Existente con Git Remote =====
Lo primero será inicializar un repositorio local con el comando git init:
{{pasted_image_20230108122519.png|}}
Y a continuación pegamos el link del repositorio con el comando git remote y
especificando el nombre de la carpeta que creamos antes:
{{pasted_image_20230108122526.png|}}
Para comprobar que la conexión se realizó correctamente podemos usar el comando
git remote -v:
{{pasted_image_20230108122532.png|}}
Para descargar el contenido del repositorio usaremos el comando git fetch y el
nombre que pusimos antes:
{{pasted_image_20230108122539.png|}}
Pero para recibir de verdad los archivos debemos utilizar un git pull
nombre_carpeta main:
{{pasted_image_20230108122548.png|}}
==== Primer paso ====
El primer paso será crear el repositorio dentro de nuestro git bash con el
comando git init:
{{pasted_image_20230108122611.png|}}
===== Fase de Stage y Commit =====
En esta etapa de stage debemos primero abrir visual studio code desde el
terminal en el mismo directorio, lo cual lo expresamos con el punto:
{{pasted_image_20230108122625.png|}}
Ahora se nos abrirá el editor de código, donde crearé un archivo python de prueba:
{{pasted_image_20230108122631.png|}}
Y ahora si vuelvo a la consola y pongo git status, podremos ver que el archivo
prueba.py que he creado anteriormente no se encuentra seguido por git, ya que
por defecto no lo hace:
{{pasted_image_20230108122638.png|}}
Y ahora si quiero seleccionar el archivo, debo hacerlo con el comando git add
prueba.py:
{{pasted_image_20230108122645.png|}}
Y ahora si pongo un git status veremos como el archivo ya se encuentra
seleccionado y de color verde:
{{pasted_image_20230108122652.png|}}
Ahora si yo por ejemplo creo otro archivo, este por defecto no va a estar
seguido por git como podemos ver aquí:
{{pasted_image_20230108122700.png|}}
Ahora voy a añadir este archivo también con el comando git add:
{{pasted_image_20230108122707.png|}}
También, si quisiera añadir varios archivos a la vez, lo haría de esta manera:
{{pasted_image_20230108122716.png|}}
Qué ocurre si modifico un archivo, por ejemplo prueba.py y luego escribo un git
status, veremos que git me marca que hubo una modificación:
{{pasted_image_20230108122727.png|}}
Y ahora si pongo un git status ocurrirá lo siguiente:
{{pasted_image_20230108122737.png|}}
Para actualizar estos cambios y añadirlos a git, debo volver a añadir el archivo:
{{pasted_image_20230108122744.png|}}
===== Fase de Commit (para comprometer nuestro trabajo) =====
Para ello utilizo el comando commit -m “Primer commit” → Aquí utilizo un título
de este commit, para indicar las modificaciones que hice:
{{pasted_image_20230108122835.png|}}
Ahora si usamos un git status veremos como no tenemos nada disponible para hacer
un commit:
{{pasted_image_20230108122842.png|}}
===== Eliminar un archivo y actualizar cambios en etapa stage y commit =====
Si eliminamos un archivo, deberemos marcar este cambio dentro de la etapa de
stage, ya que ahora si miramos los cambios con git status veremos que nos marca
que eliminamos un archivo:
{{pasted_image_20230108123000.png|}}
Y ahora para actualizar este cambio escribiremos git add archivo2.py, y así ya
tendremos actualizado en nuestra etapa de stage esta modificación:
{{pasted_image_20230108123013.png|}}
Y ahora el siguiente paso será también hacer un commit para actualizar este
cambio también:
{{pasted_image_20230108123023.png|}}
===== Subir archivos a Github =====
PASO 1:
git init
PASO 2:
git add archivo1 archivo2
PASO 3:
git commit -m 'Subiendo archivos a github o gitlab'
PASO 4:
git remote add origin url.git
PASO 5:
git push -u origin master
Aquí nos pedirá credenciales para iniciar sesión en github; y luego desde la web
tenemos que hacer un merge para pasar estos cambios a la rama main.
PASO 6:
Si tenemos errores, hacemos un git reset y volvemos a probar:
git reset
===== Conocer las modificaciones que tuvo un proyecto de Github =====
Si encontramos un proyecto donde tenga una carpeta .git, significa que se trata
de un proyecto de github:
{{pasted_image_20221217112510.png|}}
En estos casos podemos ejecutar un comando que es git log, para conocer los
cambios que se le hicieron a este proyecto; y vemos que hay una actualización
con un token que dice que la carpeta .env se ha borrado:
{{pasted_image_20221217112517.png|}}
Pues ahora vamos a conocer exactamente qué han modificado con la web de antes y
pegando ese token en el comando de git show, para conocer la información de este
token:
{{pasted_image_20221217112525.png|}}
Y se nos muestra esta información, donde se nos especifican todos los cambios
del proyecto:
{{pasted_image_20221217112539.png|}}