What is the best-practice Project structure to use? Should I use one git repository per package, or a shared one for my whole project?
We suggest to keep the number of Git Repositories as small as possible. In a nutshell:
- Start with a single Git repository for your whole distribution, where you also maintain the packages you create when kickstarting the project.
- As soon as you need a package across multiple projects, start to separate them into different git repositories.
(TODO: write some more how the single-git-repository-approach works; i.e. .gitignore and dependencies of embedded packages)
When we started with Flow, many of us created a single Git repository per-package - which however proved quite cumbersome and hard to maintain. That’s why we switched to the different mode only having as little git repositories as possible.