Pregunta Git: ¿Cómo incluyo solo las sucursales locales?


git branch -a muestra ramas remotas y locales.

git branch -r muestra ramas remotas.

¿Hay alguna manera de enumerar solo las sucursales locales?


720
2017-09-11 13:21


origen


Respuestas:


Sólo git branch sin opciones

Desde la página principal:

Sin argumentos, las ramas existentes se enumeran y la rama actual se resaltará con un asterisco.


1104
2017-09-11 13:23



solo el comando simple

git branch

175
2017-09-11 13:23



Si el asterisco principal es un problema, canalizo el git branch como sigue

git branch | awk -F ' +' '! /\(no branch\)/ {print $2}'

Esto también elimina la línea '(sin rama)' que aparece cuando tienes la cabeza separada.


34
2017-08-21 13:49



Una de las formas más sencillas de hacerlo es

git for-each-ref --format='%(refname:short)' refs/heads/

Esto también funciona perfectamente para los scripts.


21
2017-10-19 04:15



Otra forma de obtener una lista es que solo la sucursal local sea:

git branch -a | grep -v 'remotes'

8
2017-11-13 14:39



A continuación, le mostramos cómo enumerar las sucursales locales que no tienen una sucursal remota en origen con el mismo nombre:

git branch | sed 's|* |  |' | sort > local
git branch -r | sed 's|origin/||' | sort > remote
comm -23 local remote

8
2018-01-13 16:13



git branch -a // todas las ramas

git branch -r // ramas remotas solamente.

git branch -l  O git branch // ramas locales solamente.


3
2018-05-14 12:23



Hay un gran responder a una publicación sobre cómo eliminar solo las sucursales locales. En él, el compañero construye un comando para listar las ramas locales:

git branch -vv | cut -c 3- | awk '$3 !~/\[/ { print $1 }'

La respuesta tiene una gran explicación acerca de cómo se derivó este comando, por lo que le sugiero que vaya y lea esa publicación.


2
2018-05-22 18:05



Solo para complementar la respuesta de @ gertvdijk: una imagen dice mil palabras en caso de que ayude a alguien rápido.

En mi shell git bash

git branch

comando sin ningún parámetro muestra todas mis ramas locales. La rama actual que es el check-out actual también se muestra en diferentes colores (verde) junto con un asterisco que es realmente intuitivo.

enter image description here

Cuando intenta ver todas las ramas, incluidas las sucursales remotas utilizando

git branch -a

Comando, las ramas remotas que aún no están desprotegidas se muestran en color rojo:

enter image description here


0
2018-01-11 23:04