0
votes

I am new to TFS and wondering if someone can advise me if i am on the correct path and not doing it wrong;

I have the following three branches in the TFS at the moment;

enter image description here

Main is for UAT , DEV will be used for development and Release will be used for releasing changes to production.

We are planning to add another branch for staging as we have 4 web sites now;

enter image description here

First Question> Is the following way of merging and publishing changes to DEV site correct?

  • All the developers will be checking in their changes to DEV branch, which will then be merged to Main branch and then published to DEV site ? If DEV looks good then we will push everything from Main to UAT site.

Second Question > Do i need to branch Staging/Beta Release from the Main branch and then create Release from the Staging branch? Or i can just use release branch for staging.

enter image description here

1
You had this question tagged with git, but you are describing a TFVC branch hierarchy. Are you using Git, or are you using TFVC? - Daniel Mann
sorry, using tfvc - user1263981

1 Answers

0
votes

To embrace DevOps, it's important to keep your branch strategy simple and strive for high quality. So your first question is correct.

Regarding the second question, when the need arises to support more than one production version, for example a commercial solution such as Word, you can expand your branching strategy. Otherwise, you don't need to a new branch. You can tag the release branch instead of a new branch.

Check the following link for branching strategies:

https://docs.microsoft.com/en-us/azure/devops/repos/tfvc/effective-tfvc-branching-strategies-for-devops?view=azure-devops