This technote details why a cleartool relocate fails with,  cleartool: Error: branch type "branch" not found in VOB "/
Cleartool relocate aborts with the below error when attempting to move a single element, foo.c, from a source VOB, vob1, to a newly created target VOB, vob2:
% cleartool setview view1
[view1] % cd /vobs/vob1
[view1] % ls
[view1] % cleartool relocate foo.c ../vob2
Logfile is "relocate.log.13-Dec-99.15:11:11".
Do you want to relocate these objects? [no] yes
cleartool: Error: branch type "br1" not found in VOB "/vobs/vob2" and no global type definition can be found.
cleartool: Error: Unable to create branch requested by -mkbranch option in config spec.
cleartool: Error: Unable to check out "/vobs/vob2".
The relocate command above runs with no problem if a different view is set.
This error is occurring due to the config spec rules set for the view, view1:
[view1] % cleartool catcs
element * CHECKEDOUT
element * .../br1/LATEST
element * /main/LATEST -mkbranch br1
The above config spec contains an auto-make-branch rule for creating an instance of branch type, br1. This rule is being activated by relocate, because it wants to check out the target directory (which is /vobs/vob2 in this example). However, since the target VOB was newly created, it does not contain a metadata type definition for branch, br1. Hence, the checkout step fails and the relocate command aborts.
Resolving The Problem
- Use cleartool mkbrtype to create a branch type object for br1 within the target VOB locally, or
- Utilize an existing global metadata type definition for br1 in an Administrative VOB (AdminVOB) by pointing the target VOB to the Admin VOB using the hyperlink type AdminVOB; cleartool mkhlink AdminVOB vob:/Target-VOB-tag vob:/AdminVOB-tag.
16 June 2018