Вопрос по git-branch, git – Git: Как мне перечислить только местные филиалы?

793

git branch -a показывает как удаленные, так и локальные филиалы.

git branch -r показывает удаленные ветки.

Есть ли способ перечислить только местные филиалы?

Ваш Ответ

9   ответов
20

git branch -a // все ветви

git branch -r // только удаленные ветки.

git branch -l ИЛИ ЖЕgit branch // только локальные филиалы.

25

Один из самых простых способов сделать это

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

Это прекрасно работает и для скриптов.

10

Как составить список локальных ветвей, которые не имеют удаленной ветки в источнике с тем же именем:

git branch | sed 's|* |  |' | sort > local
git branch -r | sed 's|origin/||' | sort > remote
comm -23 local remote
Хороший, также oneliner:comm -23 gr4viton
0

s ответ - картинка говорит тысячу слов на случай, если кому-то поможет быстро.

На моей оболочке git bash

мерзавец ветка

Команда без параметров показывает все мои локальные ветки. Текущая ветвь, котораяВ настоящее время проверено также показано другим цветом (зеленый) наряду со звездочкой, которая действительно интуитивно понятна.

При попытке увидеть все ветви, включая удаленные ветви, используя

git branch -a

дайте команду удаленным веткам, которые неВыписанные т пока отображаются красным цветом:

@TonyAdams I 'извините если ям чего-то не хватает, но обе команды, чей вывод яотображаемые на фотографиях были отмечены серым фоном (форматирование кода) в посте. Не бери в голову, яМы улучшили форматирование поста, чтобы сделать его еще более читабельным. Ценю ваши отзывы. RBT
Тысяча слов, из которых можнот копировать? Tony Adams
1231

git branch без вариантов.

С главной страницы:

Без аргументов существующие ветки перечислены, а текущая ветка будет выделена звездочкой.

@ SteveCrane Вы узнали, как? Даже я'ищу то же самое Mudassir Ali
@gertvdijk @wdanda - но это то, что мои навыки английского говорят мне об этом »с чего он спрашиваетGit: How do I list only local branches? = это списоктолько местные отделения, зачем ему ставитьтолько если бы он хотелКак мне перечислить местные филиалы ", Семантика -only local branch это imho филиал, которыйтолько местный - нетместный и удаленный gr4viton
@ c00kiemon5ter Мне нравится, как ты нашел способ получить кучу очков в любом случае! Так смешно Abram
как это правильный ответ на то, что спросили («... к списку* только местный ветви...") ??? Wagner da Silva
34

я передаюgit branch следующее

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

Это также устраняет(нет ветки) ' линия, которая появляется, когда вы отсоединили голову.

Для сценариев это также хорошо (может быть, лучше):git for-each-ref --format='%(refname:short)' refs/heads/ musiphil
cut -c 3- это более простой вариант Alexey
Пришлось изменить этоgit branch | awk -F ' +' '$2 !~ /detached/ {print $2}' для git версии 1.9.1. iurii
9

git branch -a | grep -v 'remotes'
191

просто команда

git branch
@KevinWorkman не 9 секунд, это 11 (определенный блок) FullStackDeveloper
@RBT Один - 13: 23: 28Z, другой - 13: 23: 39Z. Это 11, не правда ли?не так ли? FullStackDeveloper
Этот ответ имеет точно такую же отметку времени, что и принятый ответ. Принятый ответ должен быть впереди в миллисекундной части :) RBT
@KevinWorkman О, здорово! Я не'Не знаю, что вся отметка времени показывается там как подсказка. Спасибо, что поделился. RBT
2

ответ на пост о том, как удалить только локальные филиалы. В нем парень создает команду для перечисления локальных ветвей:

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

Ответ содержит отличное объяснение того, как была получена эта команда, поэтому я бы посоветовал вам пойти и прочитать этот пост.

Похожие вопросы