<html>
<head>
<title>The Branching Papers -- Perforce FAQs</title>
<head>
<body bgcolor=#ffffff>
<font size=-2><b><a href="branching.html#br07">[INDEX]</a></b></font>
<p>
<b>
Why use branch views?
</b>
<blockquote>
The relationship of a branch view to a set of branched files
is a loose one. A branch
view basically serves as a mapping specification which
can be used for any <b>p4 integrate</b>
command that names that view.
However, while branch views are ephemeral, actual integration
history is preserved forever.
<p>
Say I create a branch view called 'titan':
<pre>
Branch: titan
View:
//depot/main/... //depot/project_titan/...
</pre>
The branch view has no effect on any of the files in the depot. Whether
or not I even use the branch view is a matter of choice. This particular
view has such a simple mapping that I can skip the view and specify the
mapping directly on the <b>p4 integrate</b> command:
<pre>
p4 integrate //depot/main/... //depot/project_titan/...
</pre>
which does exactly the same thing as
<pre>
p4 integrate -b titan
</pre>
Where branch views really prove useful is when mappings get complex.
E.g., consider:
<pre>
Branch: neptune
View:
//depot/main/server/... //depot/project_neptune/server/...
//depot/rel2.0/tools/... //depot/project_neptune/tools/...
//depot/rel3.1/qa/... //depot/project_neptune/qa/...
</pre>
This sets up a handy mapping for the 'neptune' development project.
Using this branch view, you can merge all the changes you need into
project_neptune using one command instead of three. That is, you can
do:
<pre>
p4 integrate -b neptune
</pre>
instead of:
<pre>
p4 integrate //depot/main/server/... //depot/project_neptune/server/...
p4 integrate //depot/rel2.0/tools/... //depot/project_neptune/tools/...
p4 integrate //depot/rel3.1/qa/... //depot/project_neptune/qa/...
</pre>
When you delete a branch view, you lose none of data about what changes
got integrated from which file to which. What you lose is the shorthand
for specifying that info. For example, if I do:
<pre>
p4 branch -d neptune
</pre>
The 'neptune' branch view disappears from the Perforce database, but all the
//depot/project_neptune files remain.
</blockquote>
<p>
<i>(April 1998)</i>
</p>
<font size=-2><b><a href="branching.html#br07">[INDEX]</a></b></font>
<hr>
<h6>This is file $Id: //guest/laura_wingerd/perforce/faq/br07.html#1 $ in the
<a href="http://public.perforce.com/public/index.html">Perforce Public Depot</a></h6>
</body>
</html>