Обнаруживать и удалять ветки - PullRequest
0 голосов
/ 23 сентября 2019

Есть ли какой-нибудь способ обнаружить все мои ветки в GitBash?

Я хочу обнаружить и удалить их.

Ответы [ 2 ]

2 голосов
/ 23 сентября 2019

Когда вы находитесь в репозитории, если вы запускаете команду:

git branch

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

git branch -a

В нем будут перечислены все ваши локальные филиалы, а также все удаленные филиалы, доступные для проверки.Если список длинен, вы заметите, что ваша командная строка становится одним двоеточием, ": ".Это означает, что, нажимая клавишу «вниз», вы можете прокручивать все доступные ветви.Чтобы выйти, просто введите q .

1 голос
/ 23 сентября 2019

Локальные ветви (показывается по умолчанию с git branch)

Конечно, лучший способ продолжить зависит от ситуации, и часто вам нужно проверять каждую ветку, чтобы сделатьрешение.

# different ways to check branches, depending on your needs/tastes
git branch -v
git show-branch

... и, кроме того, git for-each-ref и пользовательские форматы для вывода.

Для части удаления, для одной ветвилечение, у вас есть

# delete a branch (with the safety check for unmerged commits)
git branch -d some_branch

# delete a branch (WITHOUT the safety check for unmerged commits)
git branch -D some_branch

Однако, если вам нужно удалить ВСЕ ветви в пакетном режиме, когда вы уверены, что делаете, вы можете иметь псевдоним для такого рода целей. Остерегайтесь, однако, чтобы использовать это только в качестве механизма очистки для удаления каждой объединенной ветви. (так что каждая ветвь, которая полностью объединена в своем удаленном аналоге, или HEAD для чисто локальных ветвей снет вверх по течению)

# to create an all-local-branches wiping alias
git config --global alias.wipe 'git branch -d $(git for-each-ref --format="%(refname:short)" refs/heads)'

, затем просто

git wipe

Не удалит не объединенные ветви (из-за -d), но часто это хорошо. Трудно знать наверняка, здесь я не осмелился предположить, так как мы не особо разбираемся в вашем контексте, поэтому не стесняйтесь комментировать, если это бесполезно в вашем случае (если вам нужно проверить ветки один за другимвремя), и я просто удалю не относящуюся к теме часть.

Удаленные ветви (показаны git branch -r)

Удаленные ветви удалены с помощьюзапрос, отправленный в удаленное хранилище, на удаление ссылки по нескольким возможным формам, но в основном:

git push --delete origin some_branch
# or alternatively
git push origin :some_branch

Хотя, в зависимости от настроек удаленного репозитория, он может быть принят или нет.

...