My team (7 people) is switching to git using Azure Devops. I’m a bit confused on how to set it up for a data science team. I used it for personal projects which is straight forward, do dev in one branch then merge to main through pull request. But when in a team setting, do we create multiple Projects (ADO term) and multiple repo, and set up dev/ stage/ main in each? Or put everyone in 1 Project and 1 repo, keep individual projects in folders, and set up one main, one stage, and dev branches related to individual projects before pulling?
It really depends on the size and structure of your team, as well as how your projects are organized.
Personally, I prefer to start with one project and one repository and break up the projects into folders or separate branches. This allows you to keep all of the code in one place, while still allowing everyone to work on individual projects. You can then set up separate dev, stage, and main branches related to the individual projects. This will allow you to keep track of the development process, while still keeping the code centralized.
Hope it helps you!
$\begingroup$ Thank you. For single repo case, say if my team has 2 projects, A and B, then I would create dev/stage/prod for A, and same for B, and use main as step before prod (so the production ready code are all in main)? $\endgroup$ Dec 7, 2022 at 18:50
$\begingroup$ Yes, that's one way to do it. You can set up separate dev, stage, and prod branches for multiple projects within a single repository. You can then use the main branch as a final step before prod, where you can integrate and test the code from each project's prod branch, or use it as a release branch to merge and deploy the code from the prod branches. $\endgroup$– VicDec 7, 2022 at 19:00