We are currently in the process of identifying a branching model based on the documentation posted here. After some early discussions we are thinking the Standard Branch Plan will probably statisfy our needs. However, I have some questions about how to handle
check-ins and builds:
1. When we follow the best practice of only checking in code into the Development branch, should we create a Gated Check-in Build definition specifically for those check-ins on that branch. Is that the right place for a Gated Check-in to take place? Or does
it make more sense to execute a Gated Check-in build when the Development branch is reverse integrated into Main and the merge changes are then checked in?
2. We are a very small development/QA team and we currently don't have any integrated testing into our build processes, though we plan on implementing something in due time. Our current process is comprised of building the code, building an install msi off
that code and then passing it on to QA for testing. Similar to question #1, where is the correct place to integrate Build Verification Tests? Should that be done on the Development branch or Main?
3. In the meantime, and until we implement BVTs, when it comes time to create a build for QA testing, should that build be executed against the Development or the Main branch?
I apologize for all 3 of my questions being somewhat similar, but I want to make sure we implement this correctly.