1

I have the following branches in TFS

Dev

  • 2.3.0-Printing

Main

Rel

  • 2.3.0

Dev\2.3.0-Printing was branched off of Main and after completing and testing was merged back up into Main, which was then branched into Rel\2.3.0.

A bug has been found in 2.3.0 so I'm trying to figure out a branching strategy for 2.3.1 which will include the bug fix.

I was told by a previous co-worker who seemed fluent in TFS to branch from Rel\2.3.0 into Dev (ie, don't use the existing/old/previous 2.3.0-Printing branch), so I'm thinking of calling it Dev\2.3.1-Printing.

Or, should I first branch Rel\2.3.0 to Rel\2.3.1, then fork a Dev\2.3.1 branch that can later be merged back into Rel\2.3.1, effectively making Rel\2.3.0 the "Main" of all 2.3 revisions?

Branching off of Main is no longer an option since there have been additional releases since 2.3.0, which would result in a branch that included these newer changes.

The bug fix needs to make it's way back up into Main and I'm thinking it's probably a good idea to avoid circular branch relationships.

  • Sounds like branch off of Rel\2.3.1, merge back into main, merge back into whatever dev branches are currently ongoing. Look at "release isolation" in the TFVC branch guidance: docs.microsoft.com/en-us/azure/devops/repos/tfvc/… – jessehouwing Jan 24 at 20:44
  • @jessehouwing Branch Rel\2.3.1 off of Rel/2.3.0 directly? – samis Jan 24 at 20:48
  • Depends on whether you need to service 2.3.0 seperately. If this is the new 2.3.0, then just commit to 2.3.0. – jessehouwing Jan 24 at 20:59
  • 1
    You could do all of that or none of that. The way you've set it up right now isn't ideal for hotfix and servicing branches, so my recommendation would be to append to 2.3.0 and optionally use labels. You can't go to main from a fork of 2.3.0 without also updating 2.3.0 in your current setup, so you might as well commit directly to 2.3.0. – jessehouwing Jan 24 at 21:40
  • 1
    Creating a circular branch relationship is possible but not well supported in the tooling, plus it requires a baseless merge with main. You don't want that unless you love pain. – jessehouwing Jan 24 at 21:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.