Aquesta és una revisió antiga del document
Git (libro Amazon)
uso básico
configuración inicial
git config –global user.name <nombre>
git config –global user.email <email>
git config –global core.editor <EDITOR>
git condig –global push.default {matching|simple|current|nothing}
: ver sincronizando directoriosgit config –global core.excludesFile <FILE>
: fichero global de exclusión de ficherosgit config –list
iniciando repositorio
git init
git clone <http|https|ssh>
git config –list
: en el directorio del repositorio te da info sobre el mismo
trabajando con Git
- Directorio de trabajo → Index → Head
git status
git add
git add -u
: añade al Index los archivos que deben ser borradosgit add -A
= git add -u & git add .
git commit
git commit -m «<COMENTARIO>»
git commit -a
: git add -A & git commit
sincronizando repositorios
git clone
git remote -v[vv]
: lista información de los repositorios remotosgit remote add <ALIAS> <DIRECCION_REPOSITORIO>
git remote rm <ALIAS>
git remote rename <ALIAS> <NUEVO_ALIAS>
git pull <ALIAS> <RAMA>
git pull
= git fetch & git merge- ALIAS por defecto es origin
- RAMA pode defecto es master
git push <ALIAS> <RAMA>
- hemos de estar al día en nuestro respositorio local para poder hacer un push
- comportamiento por defecto v2.x : simple en lugar de matching
- simple: solo sube rama activa a la rama de la que has hecho pull, si no tiene el mismo nombre da error
- matching: sube todas las ramas, si no existe la crea
- current: sube los cambios de la rama activa a la rama del mismo nombre, si no existe, se crea
- nothing: test/debug
- upstream : idem simple pero no da error si tiene otro nombre
.gitignore
viendo el historial
git log
- parámetros:
-#_entradas
–oneline
-p
: más detalle, con diff–graph
borrado de archivos
git rm <ARCHIVO>
: borra archivo + borra archivo del Indexgit rm –cached <ARCHIVO>
: borra solo del Indexgit reset HEAD <ARCHIVO>
: idem anterior
arrepentimientos
rehacer un commit
git commit –amend
: si no hay modificación de archivos (no has modificado en Index), edita el comentario- si has olvidado algún archivo, lo añades y ejecutas la instrucció anterior
deshacer cambios de un archivo
git checkout – <ARCHIVO>
: deshace los cambios que has hecho, lo recupera del HEAD
volviendo al pasado
git reset –hard <HASH_COMMIT>
:- deshace commits posteriores al indicado
- recupera los archivos del commit indicado
- DESAPARECEN TODOS LOS CAMBIOS POSTERIORES
- se recomienda hacer un PUSH o ejecutarlo sobre otra rama
resolviendo conflictos
- hay commits posteriores en tu rama, error al hacer push
- hacer pull
- resolver conlictos, si los hubiese (primero aparece lo tuyo, entre <<<<< y ==== y lo que hay en el remoto está entre ===== y >>>>>>
- hacer push
viendo/recuperando archivos antiguos
git show <HASH_COMMIT>
git show <HASH_COMMIT>:path/to/file
git show <HASH_COMMIT>:path/to/file > archivo_copia