I don’t usually waste time ranting about a particular product here, but Microsoft’s Team Foundation Server earned my wrath today. I’ve long been disappointed with TFS’ abysmal merging capabilities, only slightly more tolerable than those of the now-ancient and thankfully deprecated Visual Source Safe.
Due to a small communications snafu, I had to conduct a rather complicated merge scenario where I needed to pull out specific changesets and merge them into another branch. This quickly became an exercise in frustration as I realized a couple limitations to TFS’ merge capability:
- You can only merge consecutive changesets in one merge operation. At first I thought this was just going to be a minor annoyance since I could just do multiple merges into the same branch, but…
- You can’t do two merge operations on the same file. This is the part where my afternoon gets slow and boring.
So basically if I try to do two merge operations, and the changesets selected in those operations happen to contain some of the same files, TFS provides a helpful “incompatible operation” error. Brilliant! So here’s what my workflow ended up looking like:
- Start merge from branch 1, choose changesets (crossing my fingers and hoping I’ll get more than 1 or 2 at a time since they have to be consecutive).
- Resolve conflicts in branch 2.
- Check in merged files in branch 2.
- Go to step 1.
And I ended up doing that about twenty times. Yuck.
posted on January 13th, 2011 at 4:25 pm
← Back to articles