frz написав:Раніше завжди використовував гілки (branch).
Тримати ці проджекти в одному репо більше не варіант. Те, що в минулому було компонентами, тепер має стати окремими продуктами, кожний з яких буде мати власну основну гілку і гілки для тривалої розробки окремими групами людин.
frz написав:Бачив і щось таке як показано в першому повідомленні, однак там суміш усього підряд, ad-hoc запити, якісь конфіги - і серед підпапок якраз лежить проект дата сцаєнс над яким зараз ведеться робота.
В ентерпрайсі така вкладеність зустрічається часто. Раніше цим займались owner'и або maintainer'и. А тут я опинився в ситуації, коли maintainer це я.
frz написав:Вважаю це звичайним бардаком. Або ж просто не розумію глибини задуму, нащо ця вкладеність. Хіба що існує адміністративне обмеження на кількість репозиторіїв. А про бранчі просто не чули.
Обмежень на кількість репо не є. Просто ми дорозроблялись до того, що деякі компоненти варто винести як окремі продукти. Таке буває, я не бачу там бардаку, навпаки, все досить акуратно погруповано.
Окремі репо є необхідністю. А вкладеність не є прям необхідністю, просто дуже бажано, щоб розробники тягали не кожний репо окремо, а все шо треба { одною або двома } командами в терміналі, і я мусю подбати щоб в них була така можливість.
Vo_Vik написав:Через composer і сімлінки
Composer гарний інструмент, ми його користували коли мали проджекти для web.
А тепер займаюсь плюсами, то дуже хотю зробити таку розбивку засобами самого Git, якщо це можливо. З того шо я вичитав в мережі, це таки можливо. Ну а якшо не вийде, то вже тоді буду ставити composer.
ReAl написав:Для початку git subtree split щоб вигризти компоненти з repo-0, зберігши їхню історію, а не просто поточні знімки цих каталогів занести у нові repo.
А тоді вже попідключати або через git subtree add чи щось таке (сам не пробував, кажуть там якась муть з merge), або через git submodule і потім операції з --recursive/--recurse-submodules .
О, це вже по ділу. Ото читаю як це робити
git help subtree
git help submodules
і пробую як воно працює на тестових репо.
ReAl написав:Або розіпхати по дереву каталогів з допомогою google repo (у нас на роботі так там де тих пов'язаних репів з десяток, але я лише користуюся зробленою іншими інфраструктурою, глибоко не ліз).
Те саме, коли працював з Yocto, то все вже було поставлено на gerrit, і я там користував те шо вже є.