10.01.2021 a las 09:16
Iniciar un nuevo repositorio local.
git init
Ver qué archivos están siendo vigilados por Git.
git status
Añadir todos los archivos modificados desde el último commit (snapshot) al stage (escenario)
git add .
Deshacer todo lo que haya hecho el git add
git reset .
Añadir todos los archivos modificados desde el último commit.
git commit -m 'string de mensaje'
El flag -m indica el mensaje que acompañará al commit. El commit toma una "fotografía"
Editar el mensaje del último commit
git commit --amend
Al ejectuar este comando, pulsamos i de insert y podremos editar el mensaje del último commit
Para salir:
Reconstruye todos los ficheros locales desde el último commit
git checkout -- .
Añadir en el fichero .gitignore de tu proyecto los ficheros o carpetas que deseas que no se vigilen por Git
Si el fichero que deseas ignorar ya está siendo vigilado por Git, le tienes que decir que lo deje de vigilar. Para ello:
git rm --cached 'file'
Por ejemplo, para ignorar el fichero environmet.ts, tienes que ejecutar:
git rm --cached src/environments/environment.ts
git rm -r --cached nombrecarpeta
git commit -m 'Eliminada la carpeta nombrecarpeta'
git push
Crear una nueva rama con el nombre nombre_rama
git branch nombre_rama
Ver todas las ramas. Estará marcada con un * la rama en la que estamos posicionados.
git branch
Cambiar de rama. Por ejemplo, para cambiar a la rama master
git switch master
Puedes crear una nueva rama y posicionarte en ella con el comando swithc y la bandera c. Con eso le dices a git que se posicione en la rama y si no existe que la cree.
git switch -c nombre_rama
Un truquito, puedes cambiar a la rama anterior sin necesidad de recordar el nombre con:
git switch -
Para cambiar de nombre una rama, pimero debes de estar posicionado en ella, si no lo estás hazlo con checkout. Despues ejecutas:
git branch -m nuevo_nombre_rama
Fusionar los cambios de la rama nombre_rama con la rama master:
git switch master
git merge nombre_rama
git switch nombre_rama
git push
git switch master
git branch -d nombre_rama
Eliminar la rama con el nombre nombre_rama del repositorio remoto: git push origin :nombre_rama
El segundo modo de fusionar trabajos de distintas ramas es el rebase. Hacer rebase escencialmente selecciona un conjunto de commits, los "copia", y los aplica en algún otro lado. Aunque esto pueda sonar confuso, la ventaja de hacer rebase es que puede usarse para conseguir una secuencia de commits lineal, más bonita. El historial / log de commits del repositorio va a estar mucho más claro si sólo usas rebase.
Pero no todo iban a ser ventajas, nunca hagas un rebase si ya tienes algo "pusheado", ya que el rebase es una acción destructiva. Con esto quiero decir que se crean nuevos commits y se destruyen los anteriores para poder aplanar los commits en una misma línea.
git rebase
Une en una sola instrucción el git add . y el git commit:
git commit -am 'Mensaje del commit'
El flag -am significa:
Añadir un repositorio remoto:
git remote add origin url_repositorio_github
Eliminar un repositorio remoto:
git remote remove origin
Comprobar repositorios remotos
git remote -v
Bajar los últimos cambios del repositorio remoto con el repositorio local
git pull 'origin' 'master'
git log
Para salir del git log pulsa la tecla q
Para ver los commits en una sóla línea
git log --oneline
Para salir del git log pulsa la tecla q
Para ver los commits en una sóla línea y en modo gráfico
git log --oneline --graph
Para salir del git log pulsa la tecla q
Para saber la diferencia que hay entre dos commits ejecuta:
git difftool hash_commit_uno hash_commit_dos
git reset --hard CodigoCommit
Resetea el proyecto al CodigoCommit deseado. Siempre y cuando no se haya hecho un push
git checkout 'rama'
Checkout cambiará de rama, es decir, modificará tus ficheros locales con los de la rama o versión deseada.
Para revertir el último commit añadido:
git reset --soft HEAD
Eliminamos el archivo no deseado de GIT:
git reset nombre_archivo.extension
La rama principal en GitHub es Main
Cuando crees un repositorio nuevo:
Añadir el link al repositorio remoto
git remote add origin [url_repositorio]
Creo la rama main
git branch -M main
Para subir el repositorio a GitHub por primera vez
git push -u origin main
Para las subidas a GitHub posteriores
git push
Listar los tags en consola
git tag
Añadir un nuevo tag
git tag -a v0.12.0 -m 'Fin sección 12 - Google'
El flag a es para indicar que es versión anotada y el flag m es para indicar el message
Subir tag a GitHub
git push --tags
Hasta luego 🖖