mkhlink

Attaches a hyperlink to an object

APPLICABILITY

ClearCase (cleartool subcommand), Attache (command)

SYNOPSIS

mkhlink [ -uni·dir ] [ -tte·xt to-text ] [ -fte·xt from-text ]

[ -fpn·ame ] [ -tpn·ame ]
[ -c·omment comment | -cfi·le comment-file-pname |-cq·uery | -cqe·ach | -nc·omment ]
hlink-type-selector from-obj-selector [ to-obj-selector ]

DESCRIPTION

The mkhlink command creates a hyperlink between two objects, each of which may be an element, branch, version, VOB symbolic link, or non-file-system VOB object (except another hyperlink).

Logically, a hyperlink is an "arrow" attached to one or two VOB-database objects:

Contrast with Other Kinds of Metadata

Like other kinds of metadata annotations-version labels, attributes, and triggers-a hyperlink is an instance of a type object: the mkhlink command creates an instance of an existing hyperlink type object. However, hyperlinks differ from other kinds of metadata annotations:

Hyperlink-IDs

Each new hyperlink object gets a unique identifier, its hyperlink-ID. You can specify any hyperlink by appending its hyperlink-ID to the name of the hyperlink type. For example:

cmd-context  describe hlink:DesignFor@52179@\doctn_vb

In this example, DesignFor is the name of a hyperlink type, and @52179@\doctn_vb is the hyperlink-ID. Note that the hyperlink-ID includes a pathname: the VOB-tag of the VOB in which the hyperlink is created. When specifying a hyperlink, you can omit the pathname if the current working directory is in that VOB:

cd \doctn_vb\src

cmd-context describe hlink:DesignFor@52179

A hyperlink-ID is unique in that it is guaranteed to differ from the hyperlink-ID of all other hyperlinks. But it can change over time; when a VOB's database is processed with reformatvob, the numeric suffixes of all hyperlink-IDs change:

before 'reformatvob':      @52179@\doctn_vb
after 'reformatvob':      @8883@\doctn_vb

Similarly, the VOB-tag part of a hyperlink-ID can change over time and can vary from host to host.

Hyperlink Inheritance

By default, a version implicitly inherits a hyperlink attached to any of its ancestor versions, on the same branch or on a parent branch. Inherited hyperlinks are listed by the describe command only if you use the -ihlink option.

A hyperlink stops being passed down to its descendents if it is superseded by another hyperlink of the same type, explicitly attached to some descendent version. You can use a null-ended hyperlink (from-object, but no to-object) as the superseding hyperlink to effectively cancel hyperlink inheritance.

PERMISSIONS AND LOCKS

Permissions Checking: For each object processed, you must be one of the following: element group member, element owner, object group member, object owner, VOB owner, member of the ClearCase group. See the permissions reference page.

Locks: An error occurs if any of the following objects are locked: VOB, element type, element, branch type, branch, hyperlink type, object or object type (for non-file-system objects).

OPTIONS AND ARGUMENTS

UNIDIRECTIONAL/BIDIRECTIONAL.  Default: Creates a bidirectional hyperlink. If the objects being linked are in different VOBs, a notation is made in the VOB database of the to-object, making it possible to see the hyperlink from either VOB.

-uni·dir

Creates a unidirectional hyperlink; no notation is made in the VOB database of the to-object (if that object is in a different VOB).
NOTE: In all cases, a single hyperlink object is created, in the VOB of the from-object.

TEXT ANNOTATIONS.  Default: The hyperlink has no text annotations.

-tte·xt to-text

Text associated with the to-end of a hyperlink. If you also specify to-obj-pname, the text is associated with that object. If you do not specify to-obj-pname, cleartool creates a text-only hyperlink, originating from from-obj-pname. If you omit both -ttext and to-obj-pname, cleartool creates a null-ended hyperlink.
-fte·xt from-text

Text associated with the from-end of a hyperlink.

EVENT RECORDS AND COMMENTS. Default: Creates one or more event records, with commenting controlled by your .clearcase_profile file (default: -nc). See CUSTOMIZING COMMENT HANDLING in the comments reference page. Comments can be edited with chevent.

-c·omment comment | -cfi·le comment-file-pname |-cq·uery | -cqe·ach | -nc·omment

Overrides the default with the option you specify. See the comments reference page.

SPECIFYING THE HYPERLINK TYPE.  Default: None.

hlink-type-selector

An existing hyperlink type. The hyperlink type must exist in each VOB containing an object to be hyperlinked, or (if hlink-type-selector is a global type) in the Admin VOB hierarchy associated with each VOB. Specify hlink-type-selector in the form [hltype:]type-name[@vob-selector]

type-name

Name of the hyperlink type

vob-selector

Object-selector for a VOB, in the form [vob:]pname-in-vob. The pname-in-vob can be the pathname of the VOB-tag (whether or not the VOB is mounted) or of any file-system object within the VOB (if the VOB is mounted)

OBJECTS TO BE HYPERLINKED.  Default: None. You must specify at least one object.

[ -fpn·ame ] from-obj-selector
[ -tpn·ame ] to-obj-selector

from-obj-selector specifies the from-object, and to-obj-selector specifies the to-object. to-obj-selector is optional; omitting it creates a text-only hyperlink (if you use -ttext) or a null-ended hyperlink (if you don't).
NOTE: An error occurs if you try to make a unidirectional hyperlink whose to-obj-selector is a checked-out version in another VOB.
Specify from-obj-selector and to-obj-selector in one of the following forms:

pname

  • A standard or view-extended pathname to an element specifies the version in the view.
  • A version-extended pathname specifies an element, branch, or version, independent of view.
  • The pathname of a VOB symbolic link.

NOTE: If pname has the form of an object selector, you must include the -fpname or -tpname option to indicate that pname is a pathname.

Examples:

foo.c

M:\gamma\usr\project\src\foo.c

foo.c@@\main\5

foo.c@@\REL3

foo.c@@

foo.c@@\main

(version of 'foo.c' selected by current view)

(version of 'foo.c' selected by another view)

(version 5 on main branch of 'foo.c')

(version of 'foo.c' with version label 'REL3')

(the element 'foo.c')

(the main branch of element 'foo.c')

vob-selector

vob:pname-in-vob

pname-in-vob can be the pathname of the VOB-tag (whether or not the VOB is mounted) or of any filesystem object within the VOB (if the VOB is mounted). It cannot be the pathname of the VOB storage directory.

attribute-type-selector

attype:type-name[@vob-selector]

branch-type-selector

brtype:type-name[@vob-selector]

element-type-selector

eltype:type-name[@vob-selector]

hyperlink-type-selector

hltype:type-name[@vob-selector]

label-type-selector

lbtype:type-name[@vob-selector]

trigger-type-selector

trtype:type-name[@vob-selector]

pool-selector

pool:pool-name[@vob-selector]

oid-obj-selector

oid:object-oid[@vob-selector]

The following object selector is valid only if you use MultiSite:

replica-selector

replica:replica-name[@vob-selector]

EXAMPLES

Examples including wildcards or quoting are written for use in cleartool interactive mode. If you use cleartool single-command mode, you may need to change the wildcards and quoting to make your command interpreter process the command appropriately.

In cleartool single-command mode, cmd-context represents the command interpreter prompt. In cleartool interactive mode, cmd-context represents the interactive cleartool prompt. In Attache, cmd-context represents the workspace prompt.

cmd-context mkhltype -nc gui_tool
Created hyperlink type "gui_tool".
cmd-context mkhlink -unidir gui_tool monet@@   \gui_vob\bin\xmonet@@
Created hyperlink "gui_tool@1239@\users_hw".
cmd-context mkhlink design_spec util.c@@\REL2  \users_hw\doc\util.doc@@\REL2
Created hyperlink "design_spec@685@\users_hw".
cmd-context mkhlink design_for sortmerge.doc ..\src\sort.c
Created hyperlink "design_for@4249@\proj_vob".
cmd-context mkhlink design_for sortmerge.doc ..\src\merge.c
Created hyperlink "design_for@4254@\proj_vob".
cmd-context mkhlink design_for sortmerge.doc ..\src\sortmerge.h
Created hyperlink "design_for@4261@\proj_vob".
cmd-context mkhlink -ttext "regression A" -ftext "edge effects" ^
tested_by cm_add.c@@ edge.sh@@

Created hyperlink "tested_by@714@\users_hw".
cmd-context mkhlink -ttext "fixes bug 21" fixes  util.c ^
m:\myview\users_hw\bugs\bug.report.21@@
Created hyperlink "fixes@714@\users_hw".
cmd-context mkhlink -ttext "Wilson: Digital Filtering, p42-50" ^
design_spec convolution.c@@

Created hyperlink "design_spec@753@\users_hw".

SEE ALSO

describe, lstype, mkhltype, rename, rmhlink



Feedback on the documentation in this site? We welcome any comments!
Copyright © 1999 by Rational Software Corporation. All rights reserved.