blob: 42796b0a64f4f991e1283d43475efa266ac37d9e [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta name="copyright" content="Copyright (c) IBM Corporation and others 2000, 2005. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page." >
<meta http-equiv="Content-Type"
content="text/html; charset=ISO-8859-1">
<meta http-equiv="Content-Style-Type" content="text/css">
<link rel="STYLESHEET" href="../book.css" charset="ISO-8859-1"
type="text/css">
<title>CVS Merge Synchronization</title>
</head>
<body style="background-color: rgb(255,255,255);">
<h1>CVS Merge Synchronization</h1>
<p class="Para">CVS Merge synchronizations launched using the <b>Team &gt; Merge</b>
menu command will appear in the Synchronize view. This view allows you to inspect
the differences between the local Workbench resources and their remote counterparts
that are being merged and allows you to update the local resources. Committing
is not supported when merging.</p>
<p class="Para"> Here is what the CVS Merge Synchronization in the Synchronize view looks like:</p>
<p class="Para"> <img src="../images/cvs-merge-sync.png" align="top" border="0" alt="CVS Merge Synchronization">
</p>
<h2>Features</h2>
<p class="Para">
The features of the CVS Merge Synchronization are similar to those of the
<a href="ref-33.htm">CVS Workspace Synchronization</a> with the following
differences.
</p>
<ul>
<li><b>Modes:</b>
When merging, only incoming and conflicting changes are possible.
As such, only the Incoming Mode and Conflicts mode are supported.</li>
<li><b>Operations:</b> Only updating is supported when merging.</li>
<li><b>Ongoing merges:</b> In order to compensate for the poor ongoing merge
support of CVS, a CVS Merge Synchronization can be pinned and kept indefinitely.
The timestamps of merged changes are recorded and, on refresh, only new changes since the last
merge are shown in the view.</li>
</ul>
<h2>Toolbar</h2>
<div class="Topic">
<h3>Synchronize</h3>
<p class="Para">This command allows you to repeat the current synchronization
which refetches the remote state of the resources. The drop down of the toolbar
item allows you to select other existing synchronizations or create new ones
using the <b>Synchronize...</b> menu command.</p>
</div>
<div class="Topic">
<h3>Pin Current Synchronization</h3>
<p class="Para">This command allows you to pin or unpin the current synchronization.
Pinned synchronizations will not be replaced by the next synchronization of
the same type while unpinned synchronizations will be replaced. This allows
you to keep a synchronization around for easy access. Such a synchronization
will automatically update when changes to Workbench resources take place and
can be configured to perform scheduled refreshes in order to keep up-to-date
with the remote state of the resources. This is especially handy for ongoing
merges from a more stable branch (e.g. HEAD) into a development branch.</p>
</div>
<div class="Topic">
<h3>Go to Next Difference</h3>
<p class="Para">This command will go to the next difference displayed by the view. All the
differences within a single file will be visited before opening the next file in the view.</p>
</div>
<div class="Topic">
<h3>Go to Previous Difference</h3>
<p class="Para">This command will go to the previous difference displayed by the view. All the
differences within a single file will be visited before opening the previous file in the view.</p>
</div>
<div class="Topic">
<h3>Collapse All</h3>
<p class="Para">Collapse all the expanded entries in the view.</p>
</div>
<div class="Topic">
<h3>Incoming Mode</h3>
<p class="Para">In this mode, all resources which have been changed in the branch
being merged are visible.</p>
</div>
<div class="Topic">
<h3>Conflicts Mode</h3>
<p class="Para"> In this mode only conflicts (resources modified both in the Workbench
and in the branch being merged) are shown.</p>
</div>
<div class="Topic">
<h3>Update All Incoming Changes</h3>
<p class="Para">This command updates all the incoming changes visible in the view.
The command will also update conflicts that are auto-mergeable but will skip
files whose contents contain conflicts.</p>
</div>
<div class="Topic">
<h3>Drop Down Menu</h3>
<p class="Para">The drop down menu allows you to remove the current or all synchronizations,
change the mode or layout, configure the current synchronization to perform
scheduled refreshes as well as set other view preferences.</p>
</div>
<h2 class="Para">Context menu </h2>
<p class="Para">From the context menu of the Synchronize view you can perform
a number of interesting operations.</p>
<h3>Open in Compare Editor</h3>
<p class="Para">This command open the selected change in a Compare editor which allows
you to inspect the changes within the file.</p>
<h3>Open</h3>
<p class="Para">This command open the local resource for the selected change in
the default Workbench editor for the file type.</p>
<h3>Open With</h3>
<p class="Para">This command allows you to open the local resource for the selected
change in the a Workbench editor.</p>
<h3>Synchronize</h3>
<p class="Para">This command refreshed the remote state of the selected resources.</p>
<h3>Remove From View</h3>
<p class="Para">This command removes the selected resources from the view. The
resources will only reappear if the state of the removed resources changes or the
Workbench is restarted.</p>
<h3>Update</h3>
<p class="Para">This command updates the selected resources. Conflicts can be
included in an update but only auto-mergeable conflicts will be updated. Non-mergeable
conflicts will be skipped and should be merged manually using a compare editor.</p>
<h3>Override and Update</h3>
<p class="Para">This command operates on conflicts and outgoing changes
and replaces the local contents of those resources with the contents
from the server.</p>
<h3>Mark as Merged</h3>
<p class="Para">This command removes the change from the view. This command should be performed after
conflicts are merged manually using a compare editor. The change will only reappear
if the view is refreshed and new changes are found in the branch being merged.</p>
<p><img border="0" src="../images/ngrelc.png" alt="Related concepts"
>
<br><a href="../concepts/concepts-26.htm">Team programming with CVS</a>
</p>
<p><img border="0" src="../images/ngrelt.png" alt="Related tasks"
>
<br><a href="../tasks/tasks-113b.htm">Resolving conflicts</a><br>
<a href="../tasks/tasks-100b.htm">Merging from a branch</a><br>
<a href="../tasks/tasks-68.htm">Comparing resources</a><br>
<a href="../tasks/tasks-68dg.htm">Merging changes in the compare editor</a>
</p>
<p><img border="0" src="../images/ngrelr.png" alt="Related reference"
>
<br><a href="../reference/ref-47.htm">CVS</a>
<br><a href="ref-41a.htm">Merge wizard</a>
<br><a href="ref-33.htm">CVS Workspace Synchronization</a>
<br><a href="ref-25.htm">Compare editor</a>
</p>
</body>
</html>