<?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>Software Configuration Management and Agile Software Development &#187; naming conventions</title>
	<atom:link href="http://accurev.com/blog/tag/naming-conventions/feed/" rel="self" type="application/rss+xml" />
	<link>http://accurev.com/blog</link>
	<description>SCM and Agile Software Development Blog</description>
	<lastBuildDate>Thu, 17 May 2012 15:00:08 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>AccuRev naming conventions</title>
		<link>http://accurev.com/blog/2008/07/08/accurev-naming-conventions/</link>
		<comments>http://accurev.com/blog/2008/07/08/accurev-naming-conventions/#comments</comments>
		<pubDate>Tue, 08 Jul 2008 19:44:05 +0000</pubDate>
		<dc:creator>AccuRev</dc:creator>
				<category><![CDATA[AccuRev]]></category>
		<category><![CDATA[Customer Guest Blogs]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[AccuRev naming conventions]]></category>
		<category><![CDATA[naming conventions]]></category>
		<category><![CDATA[SCCM]]></category>
		<category><![CDATA[SCM]]></category>
		<category><![CDATA[Software Configuration Management]]></category>

		<guid isPermaLink="false">http://accurev.wordpress.com/?p=218</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2008/07/08/accurev-naming-conventions/' addthis:title='AccuRev naming conventions ' ><a href="//addthis.com/bookmark.php?v=250&#38;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">&#124;</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div>By Tomas Lundström, ReadSoft A consistent naming scheme makes your life easier and is also a good way of avoiding name clashes in AccuRev. Here follows my stab at it. (With one important disclaimer; for multi-depot installations, you should use a depot prefix for all streams, to avoid name clashes between depots)   AccuRev Codelines [...]<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2008/07/08/accurev-naming-conventions/' addthis:title='AccuRev naming conventions '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2008/07/08/accurev-naming-conventions/' addthis:title='AccuRev naming conventions ' ><a href="//addthis.com/bookmark.php?v=250&amp;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">|</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div><p><span style="font-size:10pt;color:#000000;font-family:Arial"><strong>By Tomas Lundström, ReadSoft</strong></span></p>
<p>A consistent naming scheme makes your life easier and is also a good way of avoiding name clashes in AccuRev. Here follows my stab at it. (With one important disclaimer; for multi-depot installations, you should use a <em>depot prefix</em> for all streams, to avoid name clashes between depots)</p>
<p> </p>
<h4>AccuRev Codelines and Baselines</h4>
<p>The following naming rules apply:</p>
<ul>
<li><strong>Character set</strong>. For scripting compatibility, allowed characters are English alphanumericals, underscore &#8216;_&#8217;, hyphen &#8216;-&#8217; and period &#8216;.&#8217;.<br />
In particular, blanks, Swedish characters and slashes are disallowed.</li>
<li><strong>Case</strong>. Product names and keywords exclusively use ALL UPPER CASE, other text and component names use mixed case.<br />
Examples:APPROVE_REL, Libraries_DEV</li>
<li><strong>Main codeline streams</strong>: <span>&lt;CODELINE&gt;_&lt;LEVEL&gt;</span><br />
Examples: APPROVE_REL, DOCUMENTS_DEV<br />
In the basic case, there are two (optionally three) levels of streams for a codeline:</p>
<ul>
<li><strong>REL</strong>. Release stream, where final main releases of products are done.</li>
<li><strong>QA</strong>. QA stream (optional). If not present, the REL Stream serves QA as well</li>
<li><strong>DEV</strong>. Development stream where developers share code, and perform initial integration.<strong><br />
</strong></li>
</ul>
</li>
<li><strong>Maintenance codeline streams (&#8216;branches&#8217;)</strong>: <span>&lt;CODELINE&gt;_&lt;VERSION&gt;_&lt;LEVEL&gt;</span><br />
Examples: <span>APPROVE_5-1_REL, DOCUMENTS_6-3_DEV</span><br />
Maintenance codelines may be single level, in which case it shall have the level REL, or it can be two or three levels, just like a main codeline.</li>
<li><strong>Other codeline streams</strong>: <span>&lt;CODELINE&gt;[_&lt;VERSION&gt;]_&lt;PURPOSE&gt;[_&lt;LEVEL&gt;]<br />
</span>Examples: <span>APPROVE_portToVS2005, APPROVE_5-1_hotfix47<br />
</span>These streams are used for e.g. hotfixes, service packs, substantial tasks, subprojects, teams, experiments and acceptance tests. Most streams will be single level, so the level can be omitted. In most cases, the version can be omitted as well, since it will be evident from the context (i.e. its parent stream).</li>
<li><strong>Snapshots</strong>: <span>&lt;PARENT STREAM&gt;<strong>_</strong>&lt;TIME&gt;[<strong>_B</strong>&lt;BUILD#&gt;][<strong>_</strong>&lt;PURPOSE&gt;]</span><br />
Example: <span>APPROVE_5-1_REL_D051127T1347_B6365_iRC01<br />
</span></li>
<li><strong>Workspace Streams:</strong> <span>&lt;PARENT STREAM&gt;[_&lt;host&gt;|&lt;number&gt;]_&lt;USER&gt;<br />
</span>Normally the default scheme should be used, where the AccuRev wizard attaches the user name to the stream name, i.e. the user name should never be explicitly written out when creating a Workspace!<br />
If a user has several workspaces on the same stream, they have to be distinguished by some kind of identification. For workspaces on different computers, the host name shall be used. For workspaces on the same computer, an integer number shall be used.<br />
Examples: <span>APPROVE_DEV_3_tomas, APPROVE_DEV_buildserver12_tomas<br />
</span></li>
<li><strong>Reference Trees:</strong> &lt;<span>PARENT STREAM&gt;_RT[<strong>_</strong>&lt;PURPOSE&gt;][_&lt;host&gt;|&lt;number&gt;]</span><br />
A reference tree cannot have the same name as an existing reference tree or workspace. In case of conflict, use the same distinguishing naming rules as for Workspaces.<br />
Example: <span>APPROVE_REL_RT_NIGHTLYBUILD_buildserver12<br />
</span></li>
<li><strong>Pass-through streams</strong>: <span>&lt;CODELINE&gt;_PT_&lt;PURPOSE&gt;<br />
</span>No changes &#8216;stick&#8217; to pass-through streams. However, include/exclude rules apply, so they can e.g. be used for grouping other streams/workspaces that share visibility rules.<span><br />
Example: Documentation_PT_APPROVE</span></li>
</ul>
<p class="MsoBodyText"><strong>&lt;CODELINE&gt;</strong> is typically a product or component name, such as <em>APPROVE</em> or <em>Utilities</em></p>
<p class="MsoBodyText"><strong>&lt;VERSION&gt;</strong> is the commercial product version, e.g. 5-1</p>
<p class="MsoBodyText"><strong>&lt;TIME&gt;</strong> is on the form: <strong><span>D</span></strong><span>yymmdd[<strong>T</strong>hhmm] </span>Time is optional.</p>
<p class="MsoBodyText"><strong>&lt;PURPOSE&gt;</strong> is used for additional comments:</p>
<ul>
<li>Hotfix number (<strong>HOTFIX</strong>yy)</li>
<li>ServicePack number (<strong>SP</strong>yy)</li>
<li>Release Candidates (<strong>iRC</strong>xx, <strong>eRC</strong>yy)</li>
<li>Other useful freetext information about the purpose of the stream, such as:
<ul>
<li>For customer specific development (e.g. pilot projects): the company name<br />
Example: APPROVE_Volvo</li>
</ul>
</li>
</ul>
<p>For tasks: The task name and/or unique identifier<br />
Example: APPROVE_PurchaseOrders</p>
<p> </p>
<div><span style="font-size:12pt">best regards,</span></div>
<div><span style="font-size:12pt">/Tomas</span></div>
<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2008/07/08/accurev-naming-conventions/' addthis:title='AccuRev naming conventions '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></content:encoded>
			<wfw:commentRss>http://accurev.com/blog/2008/07/08/accurev-naming-conventions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

