Есть ли удобный способ работы с git'ом для двух проектов с несколькими одинаковыми классами?
Есть два проекта у которых можно выделить общее ядро (3-4 класса) вокруг которых написано еще десяток разных классов.
Хочется иметь возможность спокойно коммитить параллельно в два проекта разные правки, но при этом, если происходит изменение в общих файлах второй проект мог получить их одной-двумя git-командами.
Подскажите, пожалуйста, как проще всего это реализовать?
Я бы предложил разбить это всё на 3 репозитория - одно "ядро" и два - проектных. Ядро "собирается" и подключается в виде готового кода каким-нибудь менеджером зависимостей, который используется в вашем языке. Composer - php, pip - python. Для главного репозитория придётся создать setup и всю обвязку для установки его как обычного подключаемого пакета (библиотеки) в ваш код.
wateva: приведу пример. В компании, в которой я работаю есть общий для нескольких разных проектов общий репозиторий, представляющий из себя стейт-машину (машину состояний, какой "продукт" внутри системы в какое состояние может переходить, находясь в текущем) на несколько тысяч строк кода, по сути большой вложенный массив php. Этот проект обновляется редко (раз в год-два). Некоторые проекты работают по стейт-машине 2014 года, какие-то - 2016 года. С точки зрения приложения которым я занимаюсь это - "ядро". Или его часть, без неё не будет само приложение работать корректно. Так же это сторонняя библиотека, которая ставится через composer. Стейт-машину обновляют, дописывают, крайне редко переделывают (у ядра такого уровня должно быть стабильное API). У этого "ядра" есть свой конфиг composer-а в котором указано, что ставить его как зависимость надо из git-репозитория. Таким образом, тут работают с этой "библиотекой" или "частью ядра" как с зависимостью composer. С другой стороны те кто обновляют стейт-машину, делают это через git.