Одна из самых сильных сторон Git - его легкие ветки. Они позволяют эффективно работать над параллельными этапами разработки. Разработчик может даже создать отдельные ветки для отдельных ошибок. И во времени, и в пространстве филиалы почти бесплатны.

Многие рабочие процессы git имеют дело как с долгосрочными, так и с временными ветвями. Поэтому во время разработки часто возникает необходимость удалять ветки. Иногда возникает необходимость удалить общие ветки с удаленного сервера, а также локальные ветки.

Зачем удалять ветку?

Во-первых, если ты еще разобраться с мерзавцем, есть большая вероятность, что вы создадите ветку, а затем решите, что в этом нет необходимости. Или вы можете экспериментировать с ветвями и желать убрать после себя. Это нормально, поскольку ветвление в git - это легкая операция. Это очень быстро и эффективно использует дисковое пространство.

Как использовать ветви Git для структурирования вашего проекта программирования

В этой статье мы рассмотрим, что означает ветвление вашего кода, как это сделать и как управлять обновлениями в «основной» ветке git.

В результате многие рабочие процессы разработки git поощряют ветвление даже для очень маленьких или коротких задач. Например, распространенная стратегия - создать ветку для единственного исправления ошибки. Это верно даже в том случае, если всего один автор вносит однострочное изменение в один файл.

По этим причинам создание и удаление веток - это операции, которые необходимо хорошо понимать. Вы можете часто удалять ветки во время типичного рабочего процесса разработки.

Пример репозитория с ветвями

Следующие примеры относятся к образцу репозитория со следующей структурой:

$ git branch -vv
1 dev 1ae41e8 [origin / dev] первая фиксация
2 * main 1ae41e8 [origin / main] первая фиксация

Обратите внимание, что каждая локальная ветвь имеет соответствующую восходящую ветвь от удаленного: источник.

Удаление ветки с помощью командной строки

Основной синтаксис команды для удаления ветки:

git branch (-d | -D) [-r] ...

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

$ git branch -d dev

Вы не можете удалить активную ветку; если вы попытаетесь это сделать, вы получите такое сообщение:

ошибка: не удается удалить ветку 'main', извлеченную из '/ tmp / sandbox'

Когда все пойдет хорошо, вы увидите подтверждающее сообщение:

Удалена ветка dev (была 1ae41e8).

Если вы удалите ветвь, которая существует только локально, с не объединенными изменениями, вы потеряете эти изменения. Следовательно, git по умолчанию откажется удалять ветку в такой ситуации:

ошибка: ветка «dev» объединена не полностью.
Если вы уверены, что хотите его удалить, запустите 'git branch -D dev'.

Как сообщается в сообщении об ошибке, вы можете принудительно удалить с помощью -D флаг. Однако git позволит вам удалить не объединенную локальную ветку, если она существует удаленно:

предупреждение: удаление ветки «dev», которая была объединена с
'refs / remotes / origin / dev', но еще не объединены с HEAD.
Удалена ветка dev (была 9a6d20b).

Другое дело удаление удаленной ветки. Вы будете использовать git push команда вместе с -d флаг для удаления. После этого укажите имя пульта (часто источник) и название ветки:

$ git push -d origin dev
На github.com: bobbykjack / sandbox.git
- [удалено] разработчик

Удаление локальных и удаленных ветвей с помощью рабочего стола GitHub

В отличие от программы git из командной строки, Настольное приложение GitHub позволит вам удалить только активную ветку. Вы можете выполнить это действие через Ответвляться меню, выбрав Удалить вариант и подтвердив его:

GitHub Desktop не позволит вам удалить ветку по умолчанию, например. main - хотя сам git поддерживает это. Если ветвь по умолчанию является активной в данный момент, приложение отключает действие меню.

Если ветка также представляет собой удаленную ветку, GitHub Desktop также дает возможность удалить ее с удаленного компьютера:

Удаление веток с помощью GitKraken

GitKraken отображает локальную и удаленную ветки вашего репозитория на левой боковой панели. Вы должны удалить каждый раздельно.

Наведите указатель мыши на название соответствующей ветки и щелкните значок Ответвляться меню действий в виде трех вертикальных точек. В меню выберите Удалить :

Вы увидите подтверждающее сообщение о том, что это деструктивная операция. Вы можете подтвердить, что хотите продолжить Удалить кнопка:

Отражая поведение программы командной строки git по умолчанию, вы должны сначала переключиться на ветку, отличную от той, которую вы удаляете.. В противном случае вы увидите сообщение об ошибке:

Удаление локальных и удаленных веток с помощью Tower

Удаление ветки с Башня очень похоже на удаление ветки с помощью GitKraken. Локальные и удаленные ветви показаны на панели слева. Щелкните правой кнопкой мыши любую ветку и выберите в контекстном меню опцию Удалить:

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

Удаление ветки на GitHub

GitHub действует только как удаленный источник, поэтому ветки по умолчанию являются удаленными. Если вы удалите ветку с помощью веб-сайта GitHub, вам придется удалить соответствующую локальную ветку одним из других способов, описанных здесь.

Как и в случае с настольным приложением GitHub, веб-сайт GitHub не позволит вам удалить ветку по умолчанию. Варианта просто не появляется. Однако удалить ветку несложно. Из репозитория Код страницу, щелкните ветви ссылку, найдите ветку, которую нужно удалить, затем щелкните Удалить эту ветку значок, похожий на корзину:

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

Обратите внимание, что после удаления вы увидите кнопку Восстановить филиал. Однако это просто полезная функция отмены, если вы случайно нажмете значок удаления. Не полагайтесь на это, потому что как только вы обновите страницу или уйдете со страницы, вы потеряете эту возможность!

Удаление локальных и удаленных ветвей на Bitbucket

Bitbucket, как и GitHub, не позволяет удалить ветку по умолчанию. Bitbucket называет это Основная отрасль в Настройки репозитория. Вы можете удалить любую другую ветку, указанную на ветви вкладку через соответствующий Действия меню:

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

Удаление веток - часть типичного рабочего процесса Git

Ветви Git могут усложнить ваш рабочий процесс, особенно с локальными, удаленными и отслеживающими ветвями. Но для простой повседневной разработки вы, вероятно, будете постоянно создавать и удалять локальные ветки. Это основной аспект типичного рабочего процесса git, к которому вы должны привыкнуть.

Электронное письмо
Как использовать ветви Git для структурирования вашего проекта программирования

В этой статье мы рассмотрим, что означает ветвление вашего кода, как это сделать и как управлять обновлениями в «основной» ветке git.

Похожие темы
  • Программирование
  • GitHub
Об авторе
Бобби Джек (Опубликовано 23 статей)

Бобби - энтузиаст технологий, проработавший разработчиком программного обеспечения большую часть двух десятилетий. Он увлечен играми, работает редактором обзоров в Switch Player Magazine и занимается всеми аспектами онлайн-публикации и веб-разработки.

Ещё от Bobby Jack

Подписывайтесь на нашу новостную рассылку

Подпишитесь на нашу рассылку технических советов, обзоров, бесплатных электронных книг и эксклюзивных предложений!

Еще один шаг…!

Пожалуйста, подтвердите свой адрес электронной почты в письме, которое мы вам только что отправили.

.