Bienvenido a este curso para aprender a usar Github, esperamos que te sea de utilidad para empezar a trabajar de manera colaborativa.
Te brindaremos los recursos necesarios para que puedas empezar sin contratiempos. Diseñamos este curso para que puedas trabajar sin importar tu sistema operativo. Te recomendamos adecuar tu entorno de trabajo acorde a tus necesidades, ya que estaremos trabajando con la terminal del sistema, es recomendable que esta sea un entorno amigable para ti. Por el momento puedes acceder a tutoriales que ha creado la comunidad, y que a su vez han sido probados por nosotros con resultados prometedores.
En virtud de que esta guía sea de rápido acceso en tu día a día excluímos partes que en principio deberías usar sólo una vez. Será necesario que para empezar este curso realices los módulos siguientes, ya que sin ellos no podrás avanzar:
Es importante iniciar este curso sabiendo que git y github son cosas diferentes aunque guardan cierta relación, la cual se profundisará a continuación :
Sistema de control de versiones ejecutado de manera local, sirve como un historial de cambios, cada "breakpoint" será declarado por el usuario. Para hablar en terminos de git a este se le llamará "commit", y es el mismo que se utilizará en github. Ahora bien, cada commit tendrá una descripción para saber la modificación que se hizo.
Posteriormente podrás regresar a cualquier punto del desarrollo de tu proyecto.
En git es posible viajar en el tiempo
Veremos nuestro primer comando el cual servirá para inicializar nuestro git, es decir con esto lograremos que la carpeta en la que estaremos trabajando tendrá ahora un control de versiones por git, lo anterior no significa que ya tenemos algo en github, para eso hay más pasos a segir.
git init
Para empezar a crear commits (que como ya habíamos visto, serán puntos en el tiempo), debemos de decirle a git qué queremos guardar en ese momento específico, para eso es necesaria la instrucción:
git add hellowold.html
La instrucción anterior añadirá a tu commit el archivo "hellowold.html" a pesar de que puedas tener más archivos el único que será guardado será ese.
Pero.... y si necesito añadir una gran cantidad de archivos ¿Qué debo hacer?
No te estreses porque git tiene la solución, puedes añadir todos tus archivos con la instrucción:
git add .
Con la instrucción anterior debes de tener cuidado, ya que puede que tu sistema operativo genere archivos temporales en la carpeta o directorio en el que te encuentres trabajando, o simplemente tengas demasiados archivos pero, quieres excluir alguno, a continuación te dejo el procedimiento necesario dependiendo del tu sistema operativo para que git pueda ignorar un cierto archivo.
MacOs/Linux
En MacOs es común que se generen archivos temporales (aunque en linux se prían llegar a generar, y los pasos son los mismos), para esto crearemos un archivo que dará las instrucciones para que ese archivo no se guarde:touch .gitignore
El archivo anterior lo deberás abrir en un editor de código (recomendamos visual studio code), al abrirlo deberás escribir lo siguiente:
**/ .NombreArchivoIgnorado
Normalmete los archivos temporales suelen empezar su nombre con un punto, agregalos en la instrucción anterior con todo y el punto
Para saber cómo se llama el archivo temporal usa la instrucción:
ls -la
Windows
Los comandos que aquí veremos son algo diferentes a MacOs y Linux. Crearemos un archivo que dará las instrucciones para que ese archivo no se guarde:echo "">.gitignore
El archivo generado anteriormente deberás de abrirlo en un editor de texto o de código (Recomendmos el uso de visual studio code), e introducir la siguiente line de código:
**/ .NOMBREARCHIVOIGNORADO
Normalmete los archivos temporales suelen empezar su nombre con un punto, agregalos en la instrucción anterior con todo y el punto
Para saber cómo se llama el archivo temporal usa la instrucción:
dir /a
o si lo prefieres te puede servir de manera similar(Dependiendo de las versiones)
Get-ChildItem -Force
Tu sistema de control de versiones, pero en la nube. Con esto accedemos a una amplia gama de herramientas para el trabajo colaborativo, publicación de proyectos, inluso una versión light de "Hosting"
Para empezar a trabajar de manera colaborativa, será necesario hacer uso de repositorios, los cuales podrás crear desde tu perfil o página home en el boton de "+" > Crear repositorio.
La manera más fácil de empezar a trabajar desde este punto sería crear un repositorio nuevo e ir subiendo todo con las herramientas de git, aunque suponiendo que tu repositorio ya está en producción o simplemente, ya tiene trabajo inicializado, se puede seguir el siguiente procedimiento:
git clone URL-REPO-SSH
Por ejemplo:
git clone [email protected]:jtoledom1/Git_Howto.git
Importante: debes de seleccionar la opción ssh, si aún no configuras tu git para trabajar con ssh, dirígete a: Configuración-ssh
Otra manera de trabajar es suponiendo que quieras fusionar un repo de git y uno en github en el cual ambos tienen información:
git remote add origin [email protected]:jtoledom1/Git_Howto.git
git pull
Sólo si te da errores en este punto deberás usar:
git pull origin main --allow-unrelated-histories
Este se recomienda usar esta sólo al principio, es decir cuando fusionas los repos
git config pull.rebase false
De aquí en adelante se deberá de seguir el procedimiento de "Push" que se verá más adelante
Se deberá de añadir los archivos que se quieran agregar:
git add .
Posteriormente crear un commit con el método acortado
(Se recomienda usar este método ya que de lo contrario se deberá usar vim lo cual se puede tornar complicado sobretodo si no estás acostumbrado a este)
git commit -m "🐛 Mi primer commit"
Lo anterior ha creado un commit de manera local, es decir, nuestro github aún no tiene ese commit, para esto se necesita traer cualquier cambio que se haya realizado en el repositorio.
git pull origin main
(Sustituir main por la rama en la que estés trabajando)
Ahora puedes proceder a subir tus cambios a github con:
git push -u origin main
(Sustituir main por la rama en la que estés trabajando)
Made with contrib.rocks.