Я хочу имитировать поведение, подобное svn:externals: У меня есть главный проект, и у меня есть некоторый «общий» код в другом репозитории. С SVN я бы сделал:
svn co <url>/src common
и моя структура папок будет:
repo/common/*.cpp
Теперь с git + submodule + sparse checkout это намного сложнее, и у меня есть дополнительный слой подкаталога, когда я добавляю подмодуль;
git submodule add <url> common
теперь моя структура папок:
repo/common/src/*.cpp
repo/common/lib/...
с разреженной проверкой я могу убедиться, что извлекаю только папку src, но у меня все еще есть еще один слой (src) по сравнению с решением svn:externals:
repo/common/src/*.cpp
есть ли лучшее решение для общего кода? Или способ очистить это? Я знаю, что все будет работать; просто не очень чисто...