разделить репозиторий git - PullRequest
       7

разделить репозиторий git

4 голосов
/ 12 октября 2009

У меня сейчас есть git-репозиторий, который я недавно импортировал из svn name school. В этом школьном хранилище у меня есть папка для каждого из моих классов.

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

Предложения

Ответы [ 2 ]

6 голосов
/ 12 октября 2009

git filter-branch это путь. Сделайте копию репозитория для каждого подкаталога, затем в каждой копии запустите строку, подобную этой, заменив «myclassname» фактическим именем класса:

git filter-branch --subdirectory-filter myclassname -- --all

Более подробное описание процесса приведено на странице справки Github .

0 голосов
/ 12 октября 2009

Запустите следующую команду

git log -u <path>

Это даст вам список наборов изменений (включая diff) для каждого набора изменений в указанной папке.

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

Немного взломать, но это будет работать.

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