Перенос проектов в разные репозитории GIT

В моей Visual Studio 2013 у меня есть решение с несколькими проектами. Среди прочего я включаю проект, в котором хранятся классы, которые я использую в разных проектах. Эти проекты находятся в разных каталогах на моем жестком диске.

  • Решение Х
    • Проект 1
    • Проект с общими классами (разные папки)
    • Проект с классами для работы со Sparql (другая папка)
    • Проект с интерфейсом плагинов
    • ...

Я использую Расширения Visual Studio AddIn Git для управления исходным кодом. Теперь я хочу перенести каждый проект в другой репозиторий. Когда я пытаюсь добавить новый репозиторий git для одного проекта (щелкните правой кнопкой мыши проект> sourcecontrol > git > commit), он всегда выдвигает все решение (и вставляет все проекты в локальную папку этого проекта).

С svn не было проблем с передачей в разные репозитории, но я не могу понять, как это сделать с помощью Git (Расширения)

Заранее спасибо,
Фрэнк

1 ответ

SVN получает это хорошее средство с компромиссами, которые вредят другим путям.

Если вы хотите нарезать историю подкаталога, выполните

git branch sliceme
git filter-branch --subdirectory-filter path/to/that/subdir \
        -- --full-history sliceme \
        -- path/to/that/subdir

Первый -- отделяет спецификации ветки фильтра от аргументов списка ревизий, используемых для генерации коммитов, которые подают вашу новую историю, второй -- отделяет параметры rev-list и границы коммитов от фильтров пути, которые он использует для пропуска неинтересных коммитов.

Другие вопросы по тегам