What are default revisions? An excellent question indeed. Default revisions are a way of marking a specific revision of a fileset as the "default", regardless of what it is called. Keep reading, and you'll see how very useful this is, and how our great developers try to make your job easier on an everyday basis.
We are going to use our example again of v79 and v80 of Mozilla Firefox. Assume for a moment that we have v79 assigned to all devices right now in two associations as shown below:.:
If you'll look closely, you'll see that the "Production" group has an association to the revision <default> (v79) and the "Beta Testers" group is associated to v79. Effectively, this is exactly the same for both groups...v79 is installed. But, let's take a look below at what happens when we want to upgrade to v80 in the environment.
We aren't just going to assign v80 to all devices right away...as always, we want to test first, so with our patch testers group we'll edit their association as follows:
Once we save this association and update the model, all patch testers will get the new version. No deleting of the association or creating a new one is required.
Now, assume that all testing goes well, and we are ready to release to production. Now, we could edit the association for "production", but assume for a second that we had ten such associations...would we want to edit all ten of them? In a word, no. But, if you remember, the association above to production was not v79, but rather Default v79...which means the association is just to the "default" revision of the fileset.
So, we can simply edit the properties of the fileset itself and change the "default" to v80 instead.
Once we save that change, and update the model, you'll see the change reflected in the association:
And, upon next check-in, all "Production" devices will upgrade to v80.
Remember, we take care of the timing of this transition between versions...so you don't have to worry about the transition timing.