Как мне заархивировать ветки git? - PullRequest
257 голосов
/ 20 августа 2009

У меня есть несколько старых веток в моем репозитории git, которые больше не находятся в активной разработке. Я хотел бы заархивировать ветви, чтобы они не отображались по умолчанию при запуске git branch -l -r. Я не хочу их удалять, потому что я хочу сохранить историю. Как я могу это сделать?

Я знаю, что можно создать реф вне рефсов / голов. Например, refs / archive / old_branch. Есть ли какие-либо последствия этого?

Ответы [ 11 ]

0 голосов
/ 20 декабря 2018

Я иногда архивирую ветки следующим образом:

  1. Создание файлов исправлений, например, format-patch <branchName> <firstHash>^..<lastHash> (получите firstHash и lastHash, используя git log <branchName>.
  2. Переместить созданные файлы исправлений в каталог на файловом сервере.
  3. Удалить ветку, например, git branch -D <branchName>

«Применить» патч, когда вам нужно снова использовать ветку; однако применение файлов исправлений (см. git am) может быть затруднено в зависимости от состояния целевой ветви. С другой стороны, у этого подхода есть преимущество, заключающееся в том, что коммиты филиала собираются для сбора мусора и экономят место в вашем репо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...