Git: guia fácil para uso con Github

7
Chuleta de Git Guía indispensable para uso de git Cristian Romero Matesanz - https://github.com/cristianprofile CHULETA GIT - CRISTIAN ROMERO MATESANZ 1

Transcript of Git: guia fácil para uso con Github

Page 1: Git: guia fácil para uso con Github

Chuleta de Git Guía indispensable para uso de git

Cristian Romero Matesanz - https://github.com/cristianprofile

CHULETA GIT - CRISTIAN ROMERO MATESANZ �1

Page 2: Git: guia fácil para uso con Github

CHULETA GIT - CRISTIAN ROMERO MATESANZ �2

Page 3: Git: guia fácil para uso con Github

Comandos básicos

Comando Descripción Notas

git add file añade ficheros a la zona de staging

Se puede con git add . para añadir todos los ficheros.

git commit añade ficheros a respositorio local de git desde la zona de staging

Se puede usar un - m para indicar un comentario y -a para añadir ficheros del working directory.

git push origin ramaremota

sube mis cambios al repositorio de git remoto

origin indica que son las ramas existentes en Github.

git pull origin —-rebase ramaremota

baja los cambios existentes en Github realizando un rebase

Siempre usar —rebase para que el historial de la rama siga un camino sin bifurcarse. Si tenemos conflictos arreglamos cada commit nuevo que tengamos con conflicto (modificamos los ficheros marcados con conflicto y hacemos git add de dichos ficheros) y usaremos git rebase —continue hasta que no quede ningún bloqueo. Si queremos abortar el rebase usar git rebase —abort

Trabajar con ramas

Comando Descripción Notas

git branch nombre de la rama actual en la que estamos trabajando

git branch nombre_rama crea una rama con el nombre_rama facilitado

Rama creada en local.

CHULETA GIT - CRISTIAN ROMERO MATESANZ �3

Page 4: Git: guia fácil para uso con Github

git checkout nombre_rama

cambiar a la rama nombre_rama facilitada

Si no nos deja cambiar de rama deberemos usar git stash (explicado mas abajo) para poder movernos o hacer git commit de nuestros cambios antes de movernos de rama.

git branch nombre_rama -d

borra una rama local existente

Solo borrar cuando estemos seguro que no la debemos usar mas. Es borrado en local, para borrar la de Github user el siguiente comando.

git push origin :nombre_rama_remota

borra una rama remota de Github

Solo borra la rama remota no la local, para borrar la local usar el comando anterior.

git push origin nueva_rama

subir una nueva rama creada en local para ser compartida en Github

Debemos previamente movernos a la rama en local par poder subirla con checkout explicado en esta misma tabla

git fetch bajar todas las nuevas ramas compartidas en Github a mi repo local

git remote show origin nos mostrará todas las ramas de origin que estamos siguiendo y todas las que estamos usando en local.

git merge —no-ff nombre_rama

usada para fusionar en la rama actual en la que estamos con la rama nombre_rama

Si tenemos conflictos debemos modificar los ficheros con las marcas de Git. Posteriormente realizar git add de los ficheros, para por último hacer un commit sin comentario para que me lo autogenere el comentario de merge.

Comando Descripción Notas

CHULETA GIT - CRISTIAN ROMERO MATESANZ �4

Page 5: Git: guia fácil para uso con Github

Deshacer commits existentes

Comando Descripción Notas

git reset nombrecommit deshace los commits existentes y deja por defecto todos los cambios realizados en la zona de working directory

Solo para commits no subidos a Github. Si lo hemos subido este no es tu comando.

soft: zona de staged. mixed (valor por defecto): working directory. hard: Borra todo

git revert nombrecommit Solo vale para borrar un único commit existente. Nos crea un commit nuevo apuntado el cambio realizado por el revert

Se usa para eliminar un único commit que ya ha sido subido a Github y siempre y cuando queramos cambiar todo lo que hizo ese commit. En caso contrario es mejor modificarlo todo y subirlo sin necesidad de usar este comando

git reset file Si lo usamos con fichero lo que nos permite es recuperar el fichero tal cual estaba en un commit para poder trabajar con el.

Muy util para recuperar el valor de un fichero dado y te lo deja en zona staged

CHULETA GIT - CRISTIAN ROMERO MATESANZ �5

Page 6: Git: guia fácil para uso con Github

Git stash

Comando Descripción Notas

git stash save name_guradado

guarda todos los cambios en la zona de stash

Asocia le nombre dado para poder ser identificado posteriormente en su uso

git stash list listado de todos los stash almacenados

Se usa para eliminar un único commit que ya ha sido subido a Github y siempre y cuando queramos cambiar todo lo que hizo ese commit. En caso contrario es mejor modificarlo todo y subirlo sin necesidad de usar este comando

git stash apply nombre_stash

aplica los cambios de stash a mi rama actual

Si solo tenemos un stash almacenado no es necesario indicar el nombre

git stash clear borrar todo lo que contiene el stash

blame quien hizo que

Comando Descripción Notas

git blame fichero muestra en cada linea con la ha creado con fecha y datos interesantes

CHULETA GIT - CRISTIAN ROMERO MATESANZ �6

Page 7: Git: guia fácil para uso con Github

Crear tags en código

Comando Descripción Notas

git tag -a v1.4 crea un tag con toda la información de quien lo crea cuando y asociada a la rama actual

Existen ligeras pero recomendamos usar las anotadas ya que guardan metainformación asociada al tag interesante.

git tag lista toda las tags existentes con su información

git push origin —-tags sube a Github todos las tags nuevos existentes en mi git local

CHULETA GIT - CRISTIAN ROMERO MATESANZ �7