CM wiki web
What's in a Name?
This is a wide topic, but I intend to consider it here:- bottom-up from the case of ClearCase objects, such as label types or directory elements;
- as an opinion in the context of an open controversy upon whether names should or not contain themselves information—please consider expressing adverse opinions in distinct pages, possibly linking the arguments one to one, but not assuming to close the debate unilaterally;
- in a way consistent with the SCM view (see also Yet Another SCM Manifesto);
- hopefully drawing more general conclusions towards the end or later.
- easy to find, and thus to remember;
- easy to discriminate from other names;
- easy to associate with the other names in the context, so that the new names can be added.
- Properties which feel essential to one, may feel irrelevant to another.
- If you have already used a name in the past, you'll expect it to lead you to the same information again: names should be stable. There should be minimal pressure to change them ever:
- either to fix or update information they would contain
- or to take into consideration changes in their environment, e.g. clashes with new names...
Examples:- what to do with
gcc-3.2after one has addedgcc-3.2_64? - what to do with
gcc-3.3.3_32after one has addedrhgcc-3.3.3_32?
- what to do with
- Names are only ever unique in a context: a label type in a VOB, a directory name in the context of its parent.
- Users should not be encouraged to have expectations which cannot be verified, or enforced.
Examples:
-
BDB_4.5.20is sorted afterBDB_4.10.10 -
rhgcc-3.3.3_32and ...64are missed by a search with:ls -d1 gcc*, which returns all the names of directories starting ingcc...
