<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Tech Debug &#187; clearcase</title>
	<atom:link href="http://techdebug.com/blog/category/clearcase/feed/" rel="self" type="application/rss+xml" />
	<link>http://techdebug.com</link>
	<description>Why talk when you can fly</description>
	<lastBuildDate>Thu, 26 Aug 2010 07:30:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Clearcase 7.1.x install on Solaris X64/x86</title>
		<link>http://techdebug.com/blog/2010/07/21/clearcase-7-1-x-install-on-solaris-x64x86/</link>
		<comments>http://techdebug.com/blog/2010/07/21/clearcase-7-1-x-install-on-solaris-x64x86/#comments</comments>
		<pubDate>Wed, 21 Jul 2010 07:58:20 +0000</pubDate>
		<dc:creator>lantrix</dc:creator>
				<category><![CDATA[clearcase]]></category>
		<category><![CDATA[unix]]></category>
		<category><![CDATA[7.1]]></category>
		<category><![CDATA[ibm]]></category>
		<category><![CDATA[install]]></category>
		<category><![CDATA[solaris]]></category>
		<category><![CDATA[tips]]></category>
		<category><![CDATA[x64]]></category>
		<category><![CDATA[x86]]></category>

		<guid isPermaLink="false">http://techdebug.com/?p=667</guid>
		<description><![CDATA[I&#8217;ve been struggling to install the beast that is Clearcase 7.1.1 on a proof of concept server. In this case the server is a Solaris 10 64bit install running on VMware Fusion 3. One of the initial mistakes I made was to try and run the installation from a network mount. DON&#8217;T. Solaris must block [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been struggling to install the beast that is Clearcase 7.1.1 on a proof of concept server.<br />
In this case the server is a Solaris 10 64bit install running on VMware Fusion 3.</p>
<p>One of the initial <a href="http://www.ibm.com/developerworks/forums/thread.jspa?threadID=257695">mistakes I made</a> was to try and run the installation from a network mount. <strong>DON&#8217;T</strong>. Solaris must block the execution of code on some types of removable drives, which in this case was a VMWare Fusion shared folder.</p>
<p>A second thing that is not clear in the README files: Clearcase 7.1.1 <em>on Solaris x86</em> does <strong><a href="http://www.ibm.com/developerworks/forums/thread.jspa?threadID=257695">NOT</a></strong> support the GUI installation. Therefore, for me as much as any readers of this blog, I&#8217;ll document the steps to kick off a fresh/silent installation.</p>
<p>The install will be/have:</p>
<ul>
<li>A local install</li>
<li>Clearcase Atria <a href="http://www-01.ibm.com/software/rational/support/licensing/">Licencing</a>, local</li>
<li>IBM Installation Manager installed first</li>
<li>ClearCase installed second</li>
</ul>
<ol>
<li>Download your <a href="https://www-112.ibm.com/software/howtobuy/softwareandservices/">entitled product</a> for Solaris X86, for CC7.1.1 which is:
<ul>
<li>CZ9XKML</li>
<li>IBM Rational ClearCase V7.1.1 Solaris x86 Platform Edition Multilingual</li>
</ul>
<p>If you need an evaluation copy, they are <a href="https://www14.software.ibm.com/webapp/iwm/web/preLogin.do?source=rational">also available</a>.</li>
<li>Copy the archive to your server, and extract it. I&#8217;ll use <em>/var/ccinstall</em> for my install source, but adjust as required:<br />
<pre><code>
mkdir -p /var/ccinstall
cp -p CZ9XKML.zip /var/ccinstall
cd /var/ccinstall
unzip CZ9XKML.zip
cd disk1
</code></pre></li>
<li>Follow the <a href="https://publib.boulder.ibm.com/infocenter/cchelp/v7r1m0/index.jsp?topic=/com.ibm.rational.clearcase.cc_ms_install.doc/topics/c_non_gui_inst.htm">IBM documented steps</a> for preparing a silent install. For my steps the dir <em>/var/ccinstall/disk1</em> will be <em>esd_image_root</em>.</li>
<li>Kick off the install:<br />
<pre><code>
/var/ccinstall/disk1/InstallerImage_*/install \
--launcher.ini \
/var/ccinstall/disk1/InstallerImage_*/silent-install.ini \
-silent \
-input clearcase_response_sol_x86.xml \
-log silentinstall.log
</code></pre><br />
If you want to also show the progress, include the switch <code>-showVerboseProgress</code></li>
</ol>
<p>At this point kick back and make a few coffees.<br />
Enjoy.</p>
]]></content:encoded>
			<wfw:commentRss>http://techdebug.com/blog/2010/07/21/clearcase-7-1-x-install-on-solaris-x64x86/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Clearcase Tips Number 03 &#8211; managing label conventions with perl</title>
		<link>http://techdebug.com/blog/2008/01/21/clearcase-tips-number-03-managing-label-conventions-with-perl/</link>
		<comments>http://techdebug.com/blog/2008/01/21/clearcase-tips-number-03-managing-label-conventions-with-perl/#comments</comments>
		<pubDate>Mon, 21 Jan 2008 12:23:19 +0000</pubDate>
		<dc:creator>lantrix</dc:creator>
				<category><![CDATA[clearcase]]></category>
		<category><![CDATA[unix]]></category>
		<category><![CDATA[lbtype]]></category>
		<category><![CDATA[perl]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[solaris]]></category>

		<guid isPermaLink="false">http://techdebug.com/blog/2008/01/21/clearcase-tips-number-03-managing-label-conventions-with-perl/</guid>
		<description><![CDATA[I previously showed you how to use a shell script with Rational Clearcase, to alert you when a new branch type was created. In this post, I will show you how to use a Perl script to enforce Clearcase labeling conventions. This example is directed toward Clearcase on UNIX (i.e. Solaris or similar) and assumes [...]]]></description>
			<content:encoded><![CDATA[<p>I <a href="http://techdebug.com/blog/2007/12/18/clearcase-tips-number-02-triggers-and-email/">previously showed you</a> how to use a shell script with Rational Clearcase, to alert you when a new branch type was created.</p>
<p>In this post, I will show you how to use a Perl script to enforce Clearcase labeling conventions. <a href='http://www.perl.org/' title='Perl'><img src='http://techdebug.com/wp-content/uploads/2008/01/perl_republic.png' style="float: right; margin-top: 5px; margin-bottom: 5px; margin-left: 10px" alt='Perl Logo' /></a>This example is directed toward Clearcase on UNIX (i.e. Solaris or similar) and assumes you have Perl installed, working and have a basic knowledge of how to program in Perl. It is a reworked version of the windows script <a href="http://www.ibm.com/developerworks/rational/library/4311.html">supplied by IBM on Developerworks</a>.</p>
<p>This is a long post, but a good one if you are a new clearcase admin who needs to enforce label names.</p>
<p><span id="more-173"></span></p>
<p><em>Lets get into it.</em></p>
<p>For this script we would like to allow only project defined labels. This list shows examples which we will aim to enforce:</p>
<ul>
<li>A user label: USER_ASMITH_NEW</li>
<li>A defect label: DEFECT_12345</li>
<li>A Project label: PROJECTA_PRERELEASE</li>
<li>Another Project label: PROJECTB_FINAL</li>
<li>A release label: REL_1.0</li>
<li>A baseline label: BASELINE_STRATA</li>
</ul>
<p>In all examples you actually want the users to define some part of the label, so for our script we will enforce only the first part up to and including the underscore; i.e. the part in italics <em>ENFORCE_</em>USERINFO. You can change this as needed for your project.</p>
<p>Initially you will need to write a perl script that can be used in a trigger event. The perl script will take the requested label (lbtype) from the clearcase label creation event, and then process that label for you. You can start the script be choosing some preferred label prefixes for your projects (as per our example list of labels above):<br />
<pre><code>
#
# Configuration Variables
#
my $USERPREFIX = &#039;USER&#039;;
my $DEFECTPREFIX = &#039;DEFECT&#039;;
my $PROJ1_PREFIX = &#039;PROJECTA&#039;;
my $PROJ2_PREFIX = &#039;PROJECTB&#039;;
my $REL_PREFIX = &#039;REL&#039;;
my $BASEPREFIX = &#039;BASELINE&#039;;
</code></pre><br />
These variables are chosen to cover potential labels for users, defects, projects, releases and baselines. As already mentioned, change them to suit your needs.</p>
<p>After you have your variables set, put in place a subroutine to gather the current Unix userID. This will prevent a user from creating user labels with other users account names in it. This subroutine will get called later when you break apart the label with <a href="http://en.wikipedia.org/wiki/Regex">regex</a>.<br />
<pre><code>
sub checkUserName {
&nbsp;&nbsp;my $user = shift(@_);

&nbsp;&nbsp;my $currentUser = uc($ENV{CLEARCASE_USER});

 if ($user !~ m/^($currentUser)/) {
&nbsp;&nbsp;&nbsp;&nbsp;`clearprompt proceed -mask proceed -type error -prompt \&quot;Can&#039;t create label for this user\&quot;`;
&nbsp;&nbsp;&nbsp;&nbsp;exit 1;
&nbsp;&nbsp;}
&nbsp;&nbsp;exit 0;
}
</code></pre>
</p>
<p>Next you need to gather the actual lbtype requested from the operation. This script will be run as a pre-operation script, unlike <a href="http://techdebug.com/blog/2007/12/18/clearcase-tips-number-02-triggers-and-email/">tip number 02</a> which was a post operation script. The idea is to check the label BEFORE it is actually created.<br />
<pre><code>
{
&nbsp;&nbsp;my $label = $ENV{CLEARCASE_LBTYPE};

&nbsp;&nbsp;# check, if label is in uppercase format
&nbsp;&nbsp;if ($label ne uc($label)) {
&nbsp;&nbsp;&nbsp;&nbsp;`clearprompt proceed -mask proceed -type error -prompt \&quot;CC Error: Label not in uppercase\&quot;`;
&nbsp;&nbsp;&nbsp;&nbsp;exit 1;
&nbsp;&nbsp;}
</code></pre><br />
Additionally with this code you are enforcing a policy of uppercase labels. If the label is not all uppercase, the script will exit with a return code of 1, causing the label creation to fail with the prompt shown in the script.</p>
<p>It is good practice to have your labels all uppercase to prevent them from being confused with branch type names (which normally you would have all in lowercase).
</p>
<p>Next you can breakdown the label using <a href="http://en.wikipedia.org/wiki/Regex">regex</a> and use some conditional checks to compare the label against all the allowed prefixes. As long as the prefix is valid, we don&#8217;t care what comes after it. The one exception is the chosen user label convention. It will require the user prefix, followed by a username that must match the current unix login name.<br />
<pre><code>
&nbsp;&nbsp;# decompose label
&nbsp;&nbsp;if ($label =~ m/^($USERPREFIX)_(.*)_(.*)$/) {
&nbsp;&nbsp;&nbsp;&nbsp;&amp;checkUserName($2);
&nbsp;&nbsp;} elsif ($label =~ m/^($DEFECTPREFIX)_(.*)$/) {
&nbsp;&nbsp;&nbsp;&nbsp;exit 0;
&nbsp;&nbsp;} elsif ($label =~ m/^($PROJ1_PREFIX)_(.*)$/) {
&nbsp;&nbsp;&nbsp;&nbsp;exit 0;
&nbsp;&nbsp;} elsif ($label =~ m/^($PROJ2_PREFIX)_(.*)$/) {
&nbsp;&nbsp;&nbsp;&nbsp;exit 0;
&nbsp;&nbsp;} elsif ($label =~ m/^($REL_PREFIX)_(.*)$/) {
&nbsp;&nbsp;&nbsp;&nbsp;exit 0;
&nbsp;&nbsp;} elsif ($label =~ m/^($BASEPREFIX)_(.*)$/) {
&nbsp;&nbsp;&nbsp;&nbsp;exit 0;
</code></pre><br />
Note that in all cases where you get a successful match, the script will exit with a return code zero, allowing the label creation to continue. Feel free to modify the <a href="http://en.wikipedia.org/wiki/Regex">regex</a> and configuration variables to test against suffixes or the entire label type.</p>
<p>Lastly should the new label not match any of your regex checks then the script will exit with a return code of one. This will abort the creation of the invalid label type.<br />
<pre><code>
&nbsp;&nbsp;} else {
&nbsp;&nbsp;&nbsp;&nbsp;# no valid prefix found
&nbsp;&nbsp;&nbsp;&nbsp;`clearprompt proceed -mask proceed -type error -prompt \&quot;CC Error: No valid Label specified - please read project guidelines\&quot;`;
&nbsp;&nbsp;&nbsp;&nbsp;exit 1;
&nbsp;&nbsp;}
}
</code></pre><br />
Don&#8217;t forget to close off that last curly bracket we opened earlier.
</p>
<p>You can download the <a href='http://techdebug.com/wp-content/uploads/2008/01/test_label_name.pl' title='Test Label Name'>whole script</a> if you are in a rush.
</p>
<p>In this script you have seen a number of variables starting with $CLEARCASE. These variables will be populated as environment variables when the label creation trigger event occurs and launches the perl script.</p>
<p>The script should be saved somewhere it can be run on the UNIX server hosting the <a href="http://en.wikipedia.org/wiki/Rational_ClearCase#Views">VOB</a>, so when Clearcase triggers it can run the script. An appropriate location would be in the home directory of the VOB owner, for example:<br />
<code>/home/ccadmin/ccscripts/test_label_name.pl</code></p>
<p>One you have saved the script, you need to actually make the trigger in Clearcase. Consider the following on creating this trigger type:</p>
<ul>
<li>We need the trigger to run before the event completes, this is what is known as a &#8220;Pre Operation&#8221;</li>
<li>We want the trigger to be enacted before a new type is made, of type labeltype.</li>
<li>We want the trigger to execute our perl script on the event occurring</li>
</ul>
<p>You can research these options by viewing the man page of the command used to make a new trigger type:<br />
<code>cleartool man mktrtype</code><br />
Once you have read the man page, you should see some examples and options that can be used. Have a go at running the command yourself.</p>
<p>This is how I created the trigger to cover all our considerations:<br />
<pre><code>cleartool mktrtype -c &quot;Trigger to validate new labels on lbtype creation&quot; -type -preop mktype \
-lbtype -all -exec /home/ccadmin/ccscripts/test_label_name.pl new_label_trigger</code></pre><br />
My example shown here is relevant to Clearcase V6, so <a href="http://www.computerhope.com/jargon/y/ymmv.htm">YMMV</a>.</p>
<p>Once that has been run, you can see your new trigger listed in the trigger type list:<br />
<pre><code>cleartool lstype -kind trtype
21-Jan.09:21&nbsp;&nbsp; ccadmin&nbsp;&nbsp;&nbsp;&nbsp; trigger type &quot;new_label_trigger&quot;
&nbsp;&nbsp;&quot;Trigger to validate new labels on lbtype creation&quot;
</code></pre></p>
<p>Next time a user creates a label type, they will either have success if they follow the guidlines you have communicated to them, or they will get an error message explaining why the label type failed.</p>
<p>See if you can tie this in with the previous tip, so that you get an email when a new lbtype is created. Over and out.</p>
]]></content:encoded>
			<wfw:commentRss>http://techdebug.com/blog/2008/01/21/clearcase-tips-number-03-managing-label-conventions-with-perl/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Clearcase Tips Number 02 &#8211; Triggers and email</title>
		<link>http://techdebug.com/blog/2007/12/18/clearcase-tips-number-02-triggers-and-email/</link>
		<comments>http://techdebug.com/blog/2007/12/18/clearcase-tips-number-02-triggers-and-email/#comments</comments>
		<pubDate>Mon, 17 Dec 2007 22:00:35 +0000</pubDate>
		<dc:creator>lantrix</dc:creator>
				<category><![CDATA[clearcase]]></category>
		<category><![CDATA[unix]]></category>
		<category><![CDATA[brtype]]></category>
		<category><![CDATA[shell script]]></category>
		<category><![CDATA[trigger]]></category>

		<guid isPermaLink="false">http://techdebug.com/blog/2007/12/18/clearcase-tips-number-02-triggers/</guid>
		<description><![CDATA[I was looking for a simple way to have someone emailed when an event occurred in Rational Clearcase, like a new branch type being created. If you run Clearcase on UNIX (i.e. Solaris or similar) you can whip up a simple shell script and create your trigger. I will assume you have sendmail or similar [...]]]></description>
			<content:encoded><![CDATA[<p>I was looking for a simple way to have someone emailed when an event occurred in Rational Clearcase, like a new branch type being created. If you run Clearcase on UNIX (i.e. Solaris or similar) you can whip up a simple shell script and create your trigger. I will assume you have sendmail or similar already configured on your host so that mail utilities can send smtp mail</p>
<p><em>Lets have a go at it.</em></p>
<p>Write a shell script that uses mailx to send a message with some Clearcase trigger variables embedded in it, something like this:<br />
<pre><code>
# Comma delimited email list of mail recipients
adminmail=&quot;youraddress@your.domain.com&quot;
#This gets the host name
host=`uname -a |awk &#039;{print $2}&#039;`

#Begin send of message
echo &quot;\
Creation of brtype \&quot;$CLEARCASE_BRTYPE\&quot;
by: $CLEARCASE_USER
comment: $CLEARCASE_COMMENT&quot; \
| /usr/bin/mailx -s &quot;[$host:CLEARCASE] New branchtype $CLEARCASE_BRTYPE created&quot;
</code></pre><br />
You can download this <a href='http://techdebug.com/wp-content/uploads/2007/12/mail_new_brtype.sh' title='mail_new_brtype.sh'>mail_new_brtype.sh</a> if you are in a rush.</p>
<p>In this script you will see a number of variables starting with $CLEARCASE. These variables will be populated as environment variables when a trigger event occurs and  launches the shell script.</p>
<p>The script should be saved somewhere it can be run on the UNIX server hosting the VOB, so when Clearcase triggers it can run the script. An appropriate location would be in the home directory of the VOB owner, for example:<br />
<code>/home/ccadmin/ccscripts/mail_new_brtype.sh</code></p>
<p>One you have saved the script, you need to actually make the trigger in Clearcase. Consider the following on creating this trigger type</p>
<ul>
<li>We need the trigger to run after the event, this is what is known as a &#8220;Post Operation&#8221;</li>
<li>We want the trigger to be enacted after a new type is made, of type branchtype.</li>
<li>We want the trigger to execute our shell script on the event occurring</li>
</ul>
<p>You can research these options by viewing the man page of the command used to make a new trigger type:<br />
<code>cleartool man mktrtype</code></p>
<p>Once you have had a read of the man page, you should see some examples and options that can be used. Have a go at running the command yourself. This is what I came up with and should cover all our considerations:<br />
<code>cleartool mktrtype -c &quot;Trigger to email cfgmgr on new brtype creation&quot; -type -postop mktype -brtype -all -exec /home/ccadmin/ccscripts/mail_new_brtype.sh new_branch_trigger</code><br />
My example shown here is relevant to Clearcase V6, so YMMV.</p>
<p>Once that has been run, you can see your new trigger listed in the trigger type list:<br />
<pre><code>cleartool lstype -kind trtype
18-Dec.10:27&nbsp;&nbsp; ccadmin&nbsp;&nbsp;&nbsp;&nbsp; trigger type &quot;new_branch_trigger&quot;
&nbsp;&nbsp;&quot;Trigger to email cfgmgr on new brtype creation&quot;
</code></pre></p>
<p>Next time a user creates a branch type, you will receive an email with the branch type name, branch type comment and whom created it!</p>
<p>Look for more upcoming tips; including how to make a trigger use a perl script to validate label names.</p>
]]></content:encoded>
			<wfw:commentRss>http://techdebug.com/blog/2007/12/18/clearcase-tips-number-02-triggers-and-email/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Rational Clearcase appreciation</title>
		<link>http://techdebug.com/blog/2007/10/20/rational-clearcase-appreciation/</link>
		<comments>http://techdebug.com/blog/2007/10/20/rational-clearcase-appreciation/#comments</comments>
		<pubDate>Sat, 20 Oct 2007 01:15:47 +0000</pubDate>
		<dc:creator>lantrix</dc:creator>
				<category><![CDATA[clearcase]]></category>
		<category><![CDATA[SCM]]></category>
		<category><![CDATA[ibm]]></category>
		<category><![CDATA[project managment]]></category>
		<category><![CDATA[rational]]></category>

		<guid isPermaLink="false">http://techdebug.com/blog/2007/10/20/rational-clearcase-appreciation/</guid>
		<description><![CDATA[I&#8217;m coming to appreciate IBM&#8217;s Rational Clearcase, aside from the price point of course. But work have a license for it, and I have to use it. Don&#8217;t get me wrong, CVS is fantastic for tracking your small projects or larger ones with average complexity. I still use CVS for my own code, BUT clearcase [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m coming to appreciate IBM&#8217;s Rational Clearcase, aside from the price point of course. But work have a license for it, and I have to use it. Don&#8217;t get me wrong, CVS is fantastic for tracking your small projects or larger ones with average complexity. I still use CVS for my own code, BUT clearcase has these features built in that you just start to take for granted. Here is a list of the ones I think make it a cut above CVS on a time intensive and complex project:</p>
<ul>
<li>Editing commit comments from the GUI or cmd line</li>
<li>Triggers &#8211; including haveing pre and post operation triggers &#8211; some of mine are in perl!</li>
<li>Labels vs CVS tags</li>
<li>Element based branching based upon a view configspec</li>
<li>Clear Merge Manager &#8211; This one is a lifesaver!</li>
<li>renaming elements, specifically directories from GUI or cmd line</li>
</ul>
<p>You can see from my short list that there are some things there that are powerful and make life very easy in a multi stream multi branch project management environment.<br />
A case in point: I spent the last 3 hours baselining our Development, and testing branches &#8211; being 3 branches. We have started a new release cycle after our product has gone live in production, but there are still release fixes and defects being resolved that will get applied to production at a later date (2nd drop).<br />
By baselining and labelling my code in these branches, I can easily track code changes across both the new development cycles and the concurrent release fixes.</p>
<p>On the whole, after half a year using Rational Clearcase, I can say the experience &#8211; despite the initial <em>VERY LARGE</em> learning curve &#8211; has been positive.</p>
]]></content:encoded>
			<wfw:commentRss>http://techdebug.com/blog/2007/10/20/rational-clearcase-appreciation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Clearcase Tips number 01</title>
		<link>http://techdebug.com/blog/2007/10/16/clearcase-tips-number-01/</link>
		<comments>http://techdebug.com/blog/2007/10/16/clearcase-tips-number-01/#comments</comments>
		<pubDate>Tue, 16 Oct 2007 08:17:57 +0000</pubDate>
		<dc:creator>lantrix</dc:creator>
				<category><![CDATA[clearcase]]></category>
		<category><![CDATA[unix]]></category>
		<category><![CDATA[find]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://techdebug.com/blog/2007/10/16/clearcase-tips-number-01/</guid>
		<description><![CDATA[I found myself writing down example commands in clearcase (V6), so I thought I would share them. If you have ever needed to find files like you do in UNIX, but want to be clearcase specific, then these commands will give you a quick headstart on using the cleartool find command: How do I list [...]]]></description>
			<content:encoded><![CDATA[<p>I found myself writing down example commands in clearcase (V6), so I thought I would share them. If you have ever needed to find files like you do in UNIX, but want to be clearcase specific, then these commands will give you a quick headstart on using the cleartool find command:</p>
<p>How do I list all files and file versions going into a specific build that is labelled?<br />
Assume your label is <em>TR1_PRE_RELEASE</em><br />
<pre><code>
&nbsp;&nbsp;cleartool find . -version &#039;lbtype (TR1_PRE_RELEASE)&#039; -print
</code></pre><br />
How do I find the latest versions on branch xyz?<br />
In this example, branch xyz is the <em>tst</em> branch<br />
<pre><code>
&nbsp;&nbsp;cleartool find . -version &#039;version (.../tst/LATEST)&#039; -print
</code></pre><br />
How do I find the latest versions on xyz branch WITHOUT a specific label?<br />
For this example the xyz branch is the <em>main</em> (default clearcase) branch, and the label is <em>TR1_PRE_RELEASE</em><br />
<pre><code>
&nbsp;&nbsp;cleartool find . -version &#039;version (/main/LATEST) &amp;&amp; ! lbtype(TR1_PRE_RELEASE)&#039; -print
</code></pre><br />
How do I see what in the filesystem has changed from clearcase?<br />
This example only works if you have set your view on the same machine where the file system to compare is.<br />
<pre><code>
&nbsp;&nbsp;cd /&lt;clearcase mount path&gt;/
&nbsp;&nbsp;clearfsimport -preview -recurse /&lt;your app dir&gt;/* .|grep -v unchan |grep -v identi
</code></pre><br />
I hope that gives you incentive to go and read the <a href="http://publib.boulder.ibm.com/infocenter/cchelp/v7r0m0/index.jsp?topic=/com.ibm.rational.clearcase.cc_ref.doc/topics/ct_find.htm" title="">clearcase find documentation</a> and learn more for yourself by trying.</p>
]]></content:encoded>
			<wfw:commentRss>http://techdebug.com/blog/2007/10/16/clearcase-tips-number-01/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Clearcase Element Permissions on Unix</title>
		<link>http://techdebug.com/blog/2007/08/14/clearcase-element-permissions-on-unix/</link>
		<comments>http://techdebug.com/blog/2007/08/14/clearcase-element-permissions-on-unix/#comments</comments>
		<pubDate>Tue, 14 Aug 2007 06:18:44 +0000</pubDate>
		<dc:creator>lantrix</dc:creator>
				<category><![CDATA[clearcase]]></category>
		<category><![CDATA[unix]]></category>

		<guid isPermaLink="false">http://techdebug.com/blog/2007/08/14/clearcase-element-permissions-on-unix/</guid>
		<description><![CDATA[I was wondering how to set permissions on an element in clearcase under unix. You can&#8217;t just use your normal chmod. After reading &#8220;Phil for Humanity&#8221; I had the answer: cleartool protect -chmod 550 myscript.sh Quite simple after all. Your file, in this case myscript.sh, will now have the permissions you want. Remember however, if [...]]]></description>
			<content:encoded><![CDATA[<p>I was wondering how to set permissions on an element in clearcase under unix. You can&#8217;t just use your normal chmod. After reading <a href="http://www.philforhumanity.com/ClearCase_Support_5.html" title="ClearCase Support: Changing File Permissions &laquo; Phil for Humanity">&#8220;Phil for Humanity&#8221;</a> I had the answer:<br />
<code>cleartool protect -chmod 550 myscript.sh</code><br />
Quite simple after all. Your file, in this case myscript.sh, will now have the permissions you want.<br />
Remember however, if you try to set write permissions on a file element, it wont set. The clearcase man page for protect advises that write perms are ignored &#8211; instead to obtain write permission to a file element, it must be checked out.<br />
In the case of a directory element the write permission allows you to create view-private files.<br />
Don&#8217;t forget the umask should be set correctly before you start creating files!</p>
]]></content:encoded>
			<wfw:commentRss>http://techdebug.com/blog/2007/08/14/clearcase-element-permissions-on-unix/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
