git branch -a
показывает как удаленные, так и локальные ветки.
git branch -r
показывает удаленные ветки.
Есть ли способ перечислить только локальные ветки?
git branch -a
показывает как удаленные, так и локальные ветки.
git branch -r
показывает удаленные ветки.
Есть ли способ перечислить только локальные ветки?
Просто git branch
без параметров.
Из man-страницы:
Без аргументов в списке отображаются существующие ветки, и текущая ветка будет выделена звездочкой.
просто простая команда
git branch
git branch -a
- Все ветки.
git branch -r
- Только удаленные ветки.
git branch -l
или git branch
- только локальные ветки.
Если ведущая звездочка является проблемой, я нажимаю git branch
следующим образом
git branch | awk -F ' +' '! /\(no branch\)/ {print $2}'
Это также исключает строку "(не ветки)", которая появляется, когда вы отсоединяете голову.
Один из самых простых способов сделать это:
git for-each-ref --format='%(refname:short)' refs/heads/
Это отлично работает и для скриптов.
Вот как перечислить локальные ветки, которые не имеют удаленной ветки в источнике с тем же именем:
git branch | sed 's|* | |' | sort > local
git branch -r | sed 's|origin/||' | sort > remote
comm -23 local remote
Другим способом получения списка только локальной ветки является:
git branch -a | grep -v 'remotes'
Там отличный ответ на пост о том, как удалить только локальные ветки. В нем парень создает команду для перечисления локальных ветвей:
git branch -vv | cut -c 3- | awk '$3 !~/\[/{ print $1 }'
Ответ содержит отличное объяснение того, как была получена эта команда, поэтому я бы посоветовал вам пойти и прочитать этот пост.
Просто чтобы дополнить ответ @gertvdijk - картинка говорит тысячу слов на случай, если кому-то поможет быстро.
На моей оболочке git bash
мерзавец ветка
Команда без параметров показывает все мои локальные ветки. Текущая ветвь, которая в настоящее время извлечена, также показана другим цветом (зеленым) вместе со звездочкой, которая действительно интуитивно понятна.
При попытке увидеть все ветки, включая удаленные ветки, используя
Git Branch -a
Затем команда удаленных веток, которые еще не извлечены, отображается красным цветом: