resolve.html #1

  • //
  • guest/
  • perforce_software/
  • p4web/
  • main/
  • src/
  • Help/
  • resolve.html
  • View
  • Commits
  • Open Download .zip Download (8 KB)
<TITLE>Resolving Files</TITLE>

<p> The <b>resolve</b> command tells Perforce how to combine changes between files, 
  and to merge file content, if desired. You can run <b>resolve</b> only on open 
  files and only if they need resolving. P4Web uses the "<img border=none src="/resolve?icon">" 
  icon to show you which of your open files need to be resolved.
If you came to the "Resolve" options page by selecting a directory first, 
  you can <a href="restrictfiles?help">restrict</a> the files to be resolved. 
<p>
There are two situations that require files to be resolved:

<ol>
<p>
  <li> You have files <a href="edit?help">open for edit</a> and there are newer 
    versions of the files in the depot. As soon as you re-<a href="sync?help">sync</a> 
    the files, or attempt to <a href="submit?help">submit</a> them, they must 
    be resolved to account for the changes made in the new file versions. 
    <p>
<li>
You have files <a href="integrate?help">open for integrate</a>.
These files will need resolving as soon as they
are opened to account for the changes made in the files
you are integrating from.
</ol>

<p>
You can run <b>resolve</b> by:

<ul>
<p>
  <li> Selecting a <I>directory</I> in the <B>Files</B> tab and then selecting 
    <b>Resolve...</b> from the <b>Action</b> menu. This option operates on all 
    unresolved files under that directory.
<p>
  <li> Selecting a <I>file</I> in the <B>Files tab</B> and then selecting <b>Resolve...</b> 
    from the <b>Action</b> menu. This option operates only on the selected file. 
</ul>



<p>
<h4>The Resolve options page</h4>

<p>
<p> Selecting <b>Resolve...</b> from the <b>Action</b> menu takes you to the <B>Resolve</B> 
  options page, where you can select resolve options, preview the resolve command 
  you are about to run, and run the command. (Previewing the command shows you 
  which files will be affected, but doesn't tell you what the outcome will be.) 
<p> For the purpose of files handled by the <b>resolve</b> command: 
<ul>
<li><i>theirs</i> is the file the changes are coming from.
    For a file opened for integrate,
    <i>theirs</i> is the file being integrated from.
    For a file opened for edit,
    <i>theirs</i> is the newer version of the file in the depot.
  <li><i>yours</i> is the file the changes are going into, the file opened in 
    your workspace, which you will submit after resolving. 
</ul>

<p> The <B>Resolve</B> options page lets you choose how to resolve. Your choices 
  are: 
<ul>
<p>
  <li><b>Interactively:</b> launches a resolve program in a separate window. If 
    you have specified a resolve program to use with Perforce, P4Web launches 
    it. If not, the default Perforce resolve program launches and cycles through 
    all the unresolved files, letting you choose how to handle each one individually. 
    Use the "help" command to find out more, or see <a href="quickstart?help#resolving">Resolving 
    Files</a> in <a href="quickstart?help">Getting Started with Perforce and P4Web</a>. 
    <p>
  <li><b>Automatically</b>: resolve all your unresolved files in one non-interactive 
    batch. You can choose from these automatic resolve options: 
    <ul>
    <p>
      <li><b>Accept safe (unilateral) changes</b>. Resolves files if only file 
        has changed. This option works with both binary and text files. For each 
        unresolved file: 
        <ol>
        <p>
          <li>If yours has changed and theirs has not changed, or if neither yours 
            nor theirs has changed, the resolve is handled by ignoringtheirs. 
            The content of your workspace file is not modified, and the file no 
            longer needs resolving. 
            <p>
          <li>If theirs has changed and yours has not changed, the resolve is 
            handled by copying theirs into into yours. Your workspace file is 
            now identical to theirs, and the file no longer needs resolving. (This 
            approach is safe, because you can always restore your original workspace 
            file by <a href="revert?help">reverting</a> it.) 
            <p>
        <li>If both theirs and yours have changed, the resolve is skipped for
	this file.
        Your workspace file is not modified, and the file still needs resolving.
        You can then run <b>resolve</b> with either the "interactive" option
        or the "accept only non-conflicting merges" option
        to get the skipped file resolved.
        </ol>

    <p>
    <li><b>Accept only non-conflicting merges</b>.
        Works with text files only.
        It resolves each file exactly as above, except that in the third case
        where both yours and theirs have changed, the file is resolved
        if the changes do not conflict:
        <ul>
        <p>
        <li>
        Their file content is combined with your file content to produce
        a <i>merged</i> file.
        If none of their changes occur in the same place as yours, or if
        changes that do occur in the same place are exactly the same,
        the merged file is copied into your workspace file,
        and the file no longer needs resolving.
        <p>
        <li>
        If their file was changed in any of the same places as yours,
        but those changes are not identical to yours, the resolve is skipped
	for this file.
        Your workspace file is not modified, and the file still needs resolving.
        You should then run <b>resolve</b> with the "interactive" option
        to get the skipped file resolved.
        </ul>

    <p>
    <li><b>Accept all merges</b>.
        Works with text files only.
        This resolves each file exactly as above, except
        that the merged file is copied into your workspace file
        even if there were conflicting changes.
	Resolves are never skipped using this option,
        but the resulting workspace files may contain conflict markers.
        This option is not recommended unless you have some reliable
        way of checking to make sure you've edited out the conflict markers
        later. A better choice is to use the "interactive" option so that
        the merged file is only copied to your workspace
        after you've edited out the conflicts.

    <p>
    <li><b>Accept yours (ignore theirs)</b>.
        This option resolves files without changing the content of your
	opened files.
	Use this when their files contain changes that should be ignored,
	or were made in error.
	Resolves are never skipped using this option.

    <p>
    <li><b>Accept theirs (ignore yours)</b>.
        This option resolves files by copying the content of their files into
	your opened workspace files.
	<i>Any previous edits you may have done to opened files will be lost when
	you choose this option!</i>
	Resolves are never skipped using this option.

    </ul>

<p>
<li><b>Force re-resolve of previously resolved files</b>.
    Normally if you try to run <b>resolve</b> on files that have already
    been resolved, nothing happens. Use this option to force <b>resolve</b>
    to treat files as if they had not previously been resolved.
    (This option does <i>not</i> restore the contents of your workspace
    files to their "pre-resolved" state before doing the re-resolve.)

<p>
<li><b>Mark non-conflicting changes in merged result</b>.
    This causes merged or copied files to contain markers for non-conflicting
    changes as well as conflicting changes. You can search for and remove
    these markers in the editor, either while doing an "interactive"
    resolve or after automatically resolving files. In either case,
    it is up to you to remember to remove the markers after the files are
    resolved.

</ul>

# Change User Description Committed
#1 12234 Matt Attaway Rejigger P4Web project in preparation for official sunsetting

The bin directory contains the last official builds of P4Web from the
Perforce download site. P4Web is soon to be completely sunsetted; these
builds are here for folks who don't want to build their own.

To better handle the archived builds the source code has been moved into
a separate src directory.
//guest/perforce_software/p4web/Help/resolve.html
#1 8914 Matt Attaway Initial add of the P4Web source code