I have a rather simple application which consists of an angular frontend and a REST API done in C# For the frontend I use WebStorm and for the backend Visual Studio. Now we need to introduce a new version control and it has been decided to use Team Services (Git).
There is no code or any assets shared between the frontend and the backend, but they are logically coupled because the frontend needs the backend and the backend is only (and will only ever be) used by this particular frontend.
I'm fairly new to Git but I know (a bit) what submodules, subtree etc. are.
My initial thought was: Clearly, two repositories are the way to go, since I can publish frontend/backend separatly on different servers, as long as the backend exists somewhere the frontend has access too everybody will be happy. And:
- Webstorm and Visual Studio won't interfere with each other and "steal" commits (which I personally find annoying).
- Or show files which don't belong to the project. For example I would see every backend file when opening my frontend in webstorm since they are in the same repository. Or am I wrong?
On the other hand I would have to make sure myself that Frontend and Backend are always compatible. Which I think isn't that hard. But those two repositories would be totally separated in git and there wouldn't be any connection whatsoever between the two.
As far as I know it is not possible to tell git or webstorm/visual studio to just use a specific subdirectory, right?
So, my question would be. What would you recommend in this case?
- two repositories
- one repository with just subdirectories
- one repository with subtrees (and an empty parent repository?)
- something different
Thanks in advance