Я работаю с очень большим хранилищем Subversion, которое имеет довольно грязную историю. У него стандартная структура каталогов, но по одной причине я не могу клонировать его, используя git svn clone
. После того, как он оставался включенным в течение ~ 2 дней, он, похоже, зашел в бесконечный цикл, поэтому я отказался от клонирования полного хранилища.
В репозитории есть основная ветка разработки / branchs / dev и несколько ветвей функций от этой ветви. Что я хотел бы сделать, так это отслеживать только ветку dev и ветви функций, используя git master dev для отслеживания веток, а каждая ветвь функции представляет собой обычную git remote ветку.
До сих пор я создавал отдельные репозитории Git для ветки dev и каждой ветки Feature. Я получаю только последние n коммитов из каждой ветви, потому что не вижу необходимости извлекать их все (плюс ветка 'dev' не приходит непосредственно из 'trunk', хотя в теории это должно быть). Вот что я использовал ...
$ git svn init <full svn branch url> <dir name>
$ cd <dir name>
$ git svn fetch -r <start rev>:HEAD (where <start rev> is either the last or some recent commit on the branch)
Использование этого метода позволяет каждой ветви хорошо работать в изоляции, но это означает, что я не могу использовать git для слияния из dev в ветви функций и наоборот.
Как я могу использовать Git для отслеживания веток 'dev' и компонентов только в одном репозитории?