Plastic smart branches are out!
I’m very proud to announce the first release of smart branch support in Plastic. The release is still not official (so don’t use it for production before contacting us) and it can be directly downloaded here, no registration needed.

What are smart branches exactly? They’re the evolution of Plastic basic branching functionality answering some common users’ demands: they can remember their starting points so that when you switch back to a branch you don’t have to remember it yourself. While this is very good for a number of well-known branching patterns, it will really help our branch per task practitioners when they have to recover old branches.
A smart branch is, conceptually, very close to a stream, but we preferred to stick to the more traditional name of branch instead.
With smart branches Plastic remembers which one is the starting point of a branch at any given point in time. The branch properties dialog (also new in the BL101 release) will show you which one is the current starting point of the branch and will also let you modify it creating a new one (which is very helpful during rebase operations, for instance).
The new properties dialog also lets users modify the branch name and specially its comments, which was something customers were asking for since 2.0 was released.

Changesets are also given more visibility with the new release: they’ve been present in Plastic since day one, but now branches cannot just be created “from a label or baseline” but also from a given changeset, which eases maintenance.
Plastic branch inheritance mechanism is flexible enough to define many different branching strategies and now it can be easily tuned (easier than before) with the usage of smart branches.
A smart branch is just a regular Plastic branch with a link to a starting point. A starting point being:
another branch (in which case it will inherit from the LAST on this branch, implementing dynamically updated inheritance)
a given changeset on a branch (which specifies fixed inheritance from a well defined starting point)
a label (which is the regular case normally used as best practice for branching).
A new changeset is created after a new branch base is set so that users can easily find a checkpoint to be used later on, if needed, to recover this specific configuration.

If you look at the figure above you’ll see that if a developer chooses to go to changeset 99 the branch /main/task001 will use label00 as basis, but label01 if cset 100 is selected.
Changes are also introduced in the selector definition so that now rules like the following will be allowed:
And all the required branch inheritance details will be set.
The release BL101 makes all this new functionality available from the GUI and our next release will also introduce support for smart branches from the Branch Explorer.
We expect smart branches to make Plastic branching easier to use for both new and existing users and also introduce more advanced branching scenarios when needed.
Enjoy!
What are smart branches exactly? They’re the evolution of Plastic basic branching functionality answering some common users’ demands: they can remember their starting points so that when you switch back to a branch you don’t have to remember it yourself. While this is very good for a number of well-known branching patterns, it will really help our branch per task practitioners when they have to recover old branches.
A smart branch is, conceptually, very close to a stream, but we preferred to stick to the more traditional name of branch instead.
With smart branches Plastic remembers which one is the starting point of a branch at any given point in time. The branch properties dialog (also new in the BL101 release) will show you which one is the current starting point of the branch and will also let you modify it creating a new one (which is very helpful during rebase operations, for instance).
The new properties dialog also lets users modify the branch name and specially its comments, which was something customers were asking for since 2.0 was released.
Changesets are also given more visibility with the new release: they’ve been present in Plastic since day one, but now branches cannot just be created “from a label or baseline” but also from a given changeset, which eases maintenance.
Plastic branch inheritance mechanism is flexible enough to define many different branching strategies and now it can be easily tuned (easier than before) with the usage of smart branches.
A smart branch is just a regular Plastic branch with a link to a starting point. A starting point being:
A new changeset is created after a new branch base is set so that users can easily find a checkpoint to be used later on, if needed, to recover this specific configuration.

If you look at the figure above you’ll see that if a developer chooses to go to changeset 99 the branch /main/task001 will use label00 as basis, but label01 if cset 100 is selected.
Changes are also introduced in the selector definition so that now rules like the following will be allowed:
rep “codicetest”
path “/”
smartbranch “/main/task001”
And all the required branch inheritance details will be set.
The release BL101 makes all this new functionality available from the GUI and our next release will also introduce support for smart branches from the Branch Explorer.
We expect smart branches to make Plastic branching easier to use for both new and existing users and also introduce more advanced branching scenarios when needed.
Enjoy!

0 Comments:
Post a Comment
<< Home