Subversion Repositories DevTools

Rev

Rev 361 | Rev 5709 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 361 Rev 365
Line 181... Line 181...
181
#
181
#
182
Verbose ("Locate clearcase utility in users path");
182
Verbose ("Locate clearcase utility in users path");
183
Error ("Cannot locate the 'cleartool' utility in the users PATH")
183
Error ("Cannot locate the 'cleartool' utility in the users PATH")
184
    unless ( LocateProgInPath('cleartool', '--All') );
184
    unless ( LocateProgInPath('cleartool', '--All') );
185
 
185
 
-
 
186
#
-
 
187
#   Convert label with embedded VCS information into a 'normal' form.
-
 
188
#   Form:
-
 
189
#       CC::label
-
 
190
#       CC::path::label
-
 
191
#       CC::::label
-
 
192
#
-
 
193
if ( $label =~ m~^(.+?)::(.*?)(::(.+))?$~ )
-
 
194
{
-
 
195
    Error ("Label contains invalid Version Control Identifier($1): $_")
-
 
196
        if ( $1 ne 'CC' );
-
 
197
 
-
 
198
    my $ll = $2;
-
 
199
    my $path;
-
 
200
    if ( $3 )
-
 
201
    {
-
 
202
        $ll = $4;
-
 
203
        my @pelements = split( m'/+', $2);
-
 
204
        $path = $pelements[1] || '';
-
 
205
        if ( $path  )
-
 
206
        {
-
 
207
 
-
 
208
            Error ("Multiple conflicting Embedded Vobs",
-
 
209
                   "Vob: $opt_vob",
-
 
210
                   "VCS Spec: $label" ) if ( $opt_vob && $path ne $opt_vob );
-
 
211
            $opt_vob = $path;
-
 
212
        }
-
 
213
    }
-
 
214
    $label = $ll;
-
 
215
    Verbose ("Clean URL: $opt_vob, $label");
-
 
216
}
-
 
217
 
186
#-------------------------------------------------------------------------------
218
#-------------------------------------------------------------------------------
187
#   Construct a vob descriptor, if required
219
#   Construct a vob descriptor, if required
188
#
220
#
189
#   There is a potential problem/race condition if doing a rename
221
#   There is a potential problem/race condition if doing a rename
190
#   within a static view of a label that is a part of the views config spec
222
#   within a static view of a label that is a part of the views config spec
Line 1411... Line 1443...
1411
and info.
1443
and info.
1412
 
1444
 
1413
Thus it is possible to create a label, label a directory tree and then lock the
1445
Thus it is possible to create a label, label a directory tree and then lock the
1414
label.
1446
label.
1415
 
1447
 
-
 
1448
The 'label' command line parameter may be a ClearCase VCS specification, in
-
 
1449
which case the VOB and the ClearCase label will be extracted and used.
-
 
1450
 
1416
=head1 EXAMPLE
1451
=head1 EXAMPLE
1417
 
1452
 
1418
jats label -create -label -lock daf_br_23.0.0.syd
1453
jats label -create -label -lock daf_br_23.0.0.syd
1419
 
1454
 
-
 
1455
This command will create the label 'daf_br_23.0.0.syd', then label all files and
-
 
1456
folders in and below the current directory with that label, and then lock the label.
-
 
1457
 
-
 
1458
jats label -info CC::/MASS_Dev/COTS/cots_netbula::netbula_2.10.1.cots
-
 
1459
 
-
 
1460
This command will process the 'label' as a ClearCase VCS tag and extract the
-
 
1461
vob (MASS_Dev) and the ClearCase label (netbula_2.10.1.cots). It will then
-
 
1462
provide information on that label in the MASS_Dev vob.
-
 
1463
 
1420
=cut
1464
=cut
1421
 
1465