ccc

GIT: Comandos desde la consola

Dentro de la carpeta donde queramos crear el repositorio:
git init
-----------------------------------------------------------------------

git log // Historial de commits enviados
git status //  Estado actual de los commits pendientes.
git diff // Muestra las diferencias realizadas en el código.
git diff F1234567 F2345678 // Muestra la diferencia entre dos commits distintos (ese nº es el hash del commit)
git add index.php // añade el fichero al git, si quieres añadir todos: git add .
git commit // hace el commit de ese fichero enviado

A la hora de hacer un commit escribir el texto que queramos:
a) Para poder escribir ponerlo en modo inserción dando a la tecla i
b) Para guardar los cambios:
ESC -> :wq!

git commit -- amend // modifica el texto del último commit hecho por si nos faltó algo

-------------------------------------------------------------------------------
Si nos equivocamos en el código podemos recuperar lo anterior si todavía no hemos hecho un add y commit de ese fichero:
a) git checkout -- index.php
b) Si nos volvemos a equivocar en el código para recuperar el código anterior:
   1) git reset HEAD index.php
   2) git checkout -- index.php
-------------------------------------------------------------------------------

Deshacer un commit por completo:
git log --oneline // para obtener el hash del commit q queremos deshacer
git reset F123456
git checkout -- index.php // restauramos nuevo código al estado anterior

Podemos eliminarlo con un solo comando tanto del repositorio como de nuestros cambios locales:
git reset --hard F123456
git push --force

Si queremos q solo elimine el commit pero que lo deje en el stage para un futuro commit:
git reset --soft F123456


--------------------------------------------------------------------------------
Mucho más aconsejable es deshacer un commit de forma menos destructiva que con reset:
git revert F123456 F2223456

También se puede hacer especificando su posición:

git revert HEAD // deshace el último
git revert HEAD~1 // deshace el penultimo
git revert HEAD~2 // deshace el antepenultimo
...
Si queremos que no cree un commit para cada revert que hagamos:
git revert --no--commit HEAD

Si fallan los revert probar haciendo:
git reset --hard commitID
git push origin branchName --force


En este caso es HEAD pero para saber el nombre de la rama será con

git log --oneline --decorate

-------------------------------------------------------------------------------
Más información en:
https://www.youtube.com/watch?v=h-xN14zPgsQ



No hay comentarios:

Publicar un comentario