Witam, kończę pisać prostą aplikację internetową i nadszedł czas na jej wydanie. Chcę udostępnić kod źródłowy na Github oraz umieścić ją publicznie z użyciem Heroku. Projekt podzielony jest na dwa katalogi o wiadomym przeznaczeniu:
Oba zawierają w sobie repozytorium git. W fazie deweloperskiej frontend jest serwowany z użyciem Vue CLI a backend to osobny serwer. W wersji produkcyjnej aplikacja Vue wraz z zasobami kompiluje się do katalogu public serwera jako statyczne pliki.
O ile na Github będą dostępne oba repozytoria, to na heroku trafi tylko serwer z odpowiednią statyczną zawartością katalogu public.
I tu mam mały problem:
- W przypadku repozytorium na Github, zawartość katalogu public serwera (skompilowana aplikacja) nie ma żadnego znaczenia i powinna znaleźć się w gitignore. Wynika to stąd, że w fazie testowej klient i serwer powinny działać odrębnie. Budowanie aplikacji Vue do tego katalogu nie powinno dokonywać zmian w historii repozytorium serwera. Było by to bardzo mylące i niewygodne.
- W przypadku heroku, który też wykorzystuje gita, katalog public ma znaczenie, ponieważ tam znajduje się gotowa zbudowana aplikacja.
Nie wiem od końca jak z tego wybrnąć. Pierwsze o czym pomyślałem to inne pliki gitignore dla obu platform. No ale repozytorium jest jedno... Da aplikacji produkcyjnej mogło by być oddzielne repo. Nie wiem jednak czy to nie jest zbyt nieefektywne rozwiązanie.
Będę bardzo wdzięczny za jakąś poradę od bardziej doświadczonych osób. Pozdrawiam serdecznie :)