Jedno git repo wiele 'workspace'ów

0

Cześć. Jakie mam możliwość jeżeli chciałbym mieć w jednym repozytorium wiele projektów ('workspaców')np. client, mobile i backend.
Mniej więcej coś takiego:

-RootProject
    -backend
        -tutaj kod dotyczący backendu, ale też osobny tsconfig, package.json itd.
    -client
        -tutaj kod dotyczący front app, ale też osobny tsconfig, package.json itd.
    -mobile
        -tutaj kod dotyczący mobile app, ale też osobny tsconfig, package.json itd.

Jakie mam możliwości?. Mogą być artykuły, mogą być słowa kluczowe pod którymi szukać. Kiedyś gdzieś coś widziałem, że niby yarn może pomóc, ale nie mogę teraz tego znaleźć.
Spotkaliście się z czymś takim, ktoś tak robi?.
A może to zła praktyka i lepiej dla każdego takiego 'projektu' utworzyć osobne repo?

3

Lepiej osobne repo

4

Osobne repo i submodule wydaje się najrozsądniejszym pomysłem.

5

Jedno repozytorium zawierające wiele projektów nazywa się mono-repo, a wersja z osobnymi repozytoriami - multi-repo.

Każda z opcji ma swoje wady i zalety (np. multi-repo umożliwia utworzenie osobnych konfiguracji dla pipeline'ów w GitLabie / GitHubie, podczas gdy mono-repo ułatwia synchronizację cross-projektowych zależności), stąd wybór nie zawsze jest oczywisty - rzuć okiem na artykuły git mono-repo vs multi-repo i zdecyduj sam.

4

Dzięki Panowie, za szybkie odpowiedzi. Ostatecznie multirepo i submodules wydają się być najbliżej tego co chciałbym uzyskać. Zostawię też swoje legacy: szukając info natrafiłem na ciekawy artykuł o multi i mono repo a co za tym idzie ciekawe narzędzie meta.

Taka na marginesie powinienem mieć tu możliwość zaakceptowania wszystkich trzech odpowiedzi, niestety mogę tylko jedną.

1 użytkowników online, w tym zalogowanych: 0, gości: 1