Branches
A branch is another draft on top of any version. Branch from v3 and the new branch's draft starts out as v3. Nothing is copied: the files are shared until something changes. Two people can work on the same part at the same time, each in a branch, and each branch has its own reservation.
Take over
Take over brings a version from one branch into another branch's draft, usually back into main. The next version made there has two parents, and the history graph shows both lines.
Parts are taken over whole. ClassCAD files can't be merged feature by feature, so taking over replaces the target draft's source. If that would throw away changes in the draft, or versions the target has and the source doesn't contain, the PDM asks first. Nothing is lost for good: those versions stay in the graph.
Restore
Restore puts an older version of a branch back into its draft. Make a version afterwards and that state is the newest again.
Hotfixes
Releases can come from any branch, and revision letters go on across the document. To fix revision B while main has moved on: branch from B's version, fix, make a version, release it. It gets the next free letter.
Tidying up
Branches can be renamed and archived (an archived branch is read-only), and deleted as long as they have no versions of their own. main stays.