Git объединить разные хранилища?

Я использую SVN для всех моих проектов. Иногда проект B берется как копия проекта A. Когда проект A имеет общее изменение, я могу использовать svn merge A внутри каталога B и слить эти изменения.

Теперь, если бы я хотел использовать git. Мне не нравится иметь все мои проекты в том же репозитории, так как я тогда должен клонировать все и не могу выбрать только один проект, как в SVN. Но имея один репозиторий для каждого проекта, как мне сделать то же, что и раньше, с SVN?

Вопрос: Какой лучший способ структурировать его, если я хочу, чтобы несколько подпроектов действительно касались одного оригинального проекта и чтобы они синхронизировались? И что я также хочу иметь возможность проверить их отдельно.

Ответ 1

Если у вас есть два проекта, proj1 и proj2 и хотите объединить изменения proj1 в proj2, вы сделали бы это следующим образом:

# in proj2:
git remote add proj1 path/to/proj1
git fetch proj1
git merge proj1/master # or whichever branch you want to merge

Я считаю, что это делает то же самое, что и вы с SVN.