User Tools

Site Tools


cheat_sheet_chuleta_de_git_para_sysadmins

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
cheat_sheet_chuleta_de_git_para_sysadmins [2023/10/19 12:24] – [Deshacer acciones] busindrecheat_sheet_chuleta_de_git_para_sysadmins [2024/05/28 21:09] (current) – [Ramas y etiquetas] busindre
Line 102: Line 102:
 <code bash> <code bash>
 git branch -avv                   # Lista todas las ramas y algunos commits. git branch -avv                   # Lista todas las ramas y algunos commits.
 +git branch -r                     # Lista las ramas remotas (se puede usar con --merged y --no-merged)
 +git branch --merged               # Lista las ramas que ya han sido fusionadas (normalmente candidatas para ser eliminadas).
 +git branch --no-merged            # Lista ramas todavía pendientes de ser fusionadas.
 +
 git branch <rama>                 # Crea una rama. Esto es siempre a partir de la rama donde se esté trabajando, es decir, master u otra rama. git branch <rama>                 # Crea una rama. Esto es siempre a partir de la rama donde se esté trabajando, es decir, master u otra rama.
 git checkout <rama>               # Cambiar de rama = Cambiar el puntero HEAD. / Si se usa "-" se va a la rama anterior. git checkout <rama>               # Cambiar de rama = Cambiar el puntero HEAD. / Si se usa "-" se va a la rama anterior.
Line 107: Line 111:
 git checkout -b <rama>            # Crea una rama y cambia a la rama creada, equivale a los dos comandos anteriores. git checkout -b <rama>            # Crea una rama y cambia a la rama creada, equivale a los dos comandos anteriores.
  
-git branch -d <rama>              # Borrar una rama local que haya sido fusionada. +git branch -d <rama>              # Borrar una o varias ramas locales que haya sido fusionada. De haber sido fusionada la rama mostrará un error
-git branch -<rama>              # Borrar una rama local aunque no haya sido fusionada. +git branch -<rama>              # Borrar una o varias ramas local aunque no haya sido fusionada. 
-git branch -d `git branch --merged | grep -v \* | xargs`   # Borrar todas las ramas en local (-d o -D segun se necesite).+git branch -d `git branch --merged | grep -v \* | xargs`   # Borrar todas las ramas en local (-d o -D según se necesite).
  
 git push origin --delete <rama>   # Borrar una rama en nuestro repositorio remoto. git push origin --delete <rama>   # Borrar una rama en nuestro repositorio remoto.
Line 118: Line 122:
  
 git show <rama>:<fichero>   # Muestra el contenido de un fichero de otra rama. git show <rama>:<fichero>   # Muestra el contenido de un fichero de otra rama.
 +</code>
 +
 +Eliminar varias ramas de forma simultanea
 +<code bash>
 +# Borra todas las tamas locales ya fusionadas excluyendo master y XXX.
 +git branch --merged | grep -Ev "(^\*|master|XXX)" | xargs git branch -d
 +
 +# Elimina  todas las ramas remotas que hayan sido fusionadas (Usar -D para todas las ramas remotas, estén o no fusionadas) a excepcion de master y XXXX.
 +git branch -r --merged | grep -Ev "(^\*|master|XXX)" | sed 's/origin\///' | xargs -n 1 git push origin --delete
 +
 +# Listar y borrar ramas locales que hayan sido eliminadas en el remoto. "<remote>" suele referenciar a "origin" si no se ha cambiado el nombre del repositorio remoto.
 +git remote prune <remote> --dry-run # Lista
 +git remote prune <remote> # Borra
 </code> </code>
  
cheat_sheet_chuleta_de_git_para_sysadmins.txt · Last modified: 2024/05/28 21:09 by busindre