- <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 contain...s 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. « |
10 years ago | |
//guest/perforce_software/p4web/Help/resolve.html | |||||
#1 | 8914 | Matt Attaway | Initial add of the P4Web source code | 11 years ago |