What is the best practise of git branching in dbt cloud

Hi All,

We are new to dbt cloud and our team faces some challenges now.

We have three databases standing for three environments now, dev, qa and prod.

We want to follow up git-hub workflow to do the development.

Our process now is to be designed as create feature/xxx branch from main branch, and once development is done, we will merge feature/xxx into release branch and then do the testing in qa, if all the test cases are passed, we will merge release branch into main branch.

However, we know how to set up the jobs and environments, but we are not sure what is best practice working in dbt.

Any suggestions would be helpful. :slight_smile:

We have 1 dev database and 1 prod database. Each developer has their own Schema. When we branch each of our development, it goes into our own private schema. Once we are ready to push into production we merge into our main branch. Our current setup allows us to each test our particular features again real-time data and how it would impact our warehouse and BI tools. Also segmenting the features by person once merged into main, we each get the updates and we can fix any issues of conflict. We are a small team though so as the manager we’ve been lucky to separate features distinctly to people where overlap is rare and when it does occur we can just discuss it.

I hope this helps. We use Snowflake with dbt Cloud.