После слияния ветки вы удаляете ее из репозитория?
Однако это хорошая практика или нет?
Обычно я создаю много веток, так как я не хочу нарушать работу моего текущего релиза и хочу удалить их, чтобы все было в порядке.
Однако, если вы работаете с Assembla или GitHub, ваши запросы на слияние из старых веток будут сохранены на сайте, поэтому, если вы удалите их, вы получите сообщение об ошибке, так как он не сможет их получить ...
Обычно как это удается?
git
branching-and-merging
тампе125
источник
источник
Merge branch fix-foo-bar
сообщений фиксации. Попробуйтеgit log --grep="Merge branch"
, а затем сбросьте интересующие вас якоря черезgit checkout -b curious-change
. Кроме того, при удалении ветки ничего не теряется - кроме простого указателя «имя ветки → commithash» (которым на самом деле является ветка, не имеет значения локальная или удаленная).Я определенно очищаю свои ветки после того, как они были объединены.
Мы используем GitLab и мерж-реквесты в работе, поэтому историческая информация о ветках хранится там; Мне не нужно, чтобы они загромождали мой список веток, и когда я смотрю на вилку коллеги, в идеале мне хотелось бы видеть только ветки их текущей активной разработки. Если я пытаюсь просмотреть код в их ветке, я хочу иметь возможность просмотреть только несколько активных в настоящее время веток, а не все функции или исправления, над которыми они когда-либо начали работать.
Вышесказанное относится и к BitBucket и GitHub.
Единственная причина, по которой вы можете не удалять ветку после слияния, состоит в том, чтобы вы знали, где закончилась данная функция, но коммиты слияния (и,
git merge --no-ff
если вы действительно хотите) делают это неактуальным.источник
Просто позаботьтесь о том, чтобы
все гиперссылки, ссылки на URL-адреса ваших УДАЛЕННЫХ ветвей, БЫЛИ РАЗРЕШЕНЫ .
Например,
если вы удалите
branch_feature_x
ветку из своего репо,соответствующий URL-адрес гиперссылки этой ветки будет сломан
https://github.com/username/project/tree/branch_feature_x
источник
Чтобы уточнить, ветка с точки зрения git - это просто ссылка на какой-то коммит. Удаляя ветку, вы не удаляете коммиты из репозитория git. Конечно, отдельные коммиты будут очищены через некоторое время с помощью сборщика мусора git.
К вашему сведению: обычно мы объединяем ветки в мастер через интерфейс bitbucket. Там вы можете установить
delete feature branch after merge
флаг.Если вам нужно иметь дело со слишком старыми ветками, вы можете поискать некоторые утилиты, например эту .
источник