Perforce 2003.1 Command Reference
<< Previous Chapter
p4 describe
Table of Contents
Index
Perforce on the Web
Next Chapter >>
p4 diff2

p4 diff

Synopsis

Compare a client workspace file to a revision in the depot.

Syntax

p4 [g-opts] diff [-dflag] [-f] [-sa | -sd | -se | -sr] [-t] [ file[rev#] ...]

Description

p4 diff runs a diff program on the Perforce client, comparing files in the client workspace to revisions in the depot.

This command takes a file argument, which can contain a revision specifier. If a revision specifier is included, the file in the client workspace is diffed against the specified revision. If a revision specifier is not included, the client workspace file is compared against the revision currently being edited (usually the head revision). In either case, the client file must be open for edit, or the comparison must be against a revision other than the one to which the client file was last synced.

If the file argument includes wildcards, all open files that match the file pattern are diffed. If no file argument is provided, all open files are diffed against their depot counterparts.

By default, the diff routine used is the one provided with the Perforce client. You can change this diff routine to any other diff program by setting the P4DIFF environment or registry variable.

Options

-f

Force the diff, even when the client file is not open for edit.

-dflag

Pass flag flag to the underlying diff routine (see the Usage Notes below for details)

-sa

Diff only open files that are different from the revision in the depot, or are missing.

-sd

Diff only unopened files that are missing on the client.

-se

Diff only unopened files that are different than the revision in the depot.

-sr

Diff only opened files that are identical to the revision in the depot.

-t

Diff the revisions even if the files are not of type text.

g-opts

See the Global Options section.

Usage Notes

Can File Arguments Use
Revision Specifier?

Can File Arguments Use
Revision Range?

Minimal Access Level Required

Yes

No

read

Examples

p4 diff foo#5

Compare the client workspace revision of file foo to the fifth depot revision.

p4 diff @1999/05/22

Compare all open files in the client workspace to the revisions in the depot as of midnight on May 22, 1999.

p4 diff -du foo

Run the comparison on file foo, displaying output in a format suitable for the patch(1) utility.

p4 diff -d-brief foo

Run the comparison on foo, passing the --brief flag to the underlying diff routine.

p4 diff -sr | p4 -x - revert

Revert all open, unchanged files.

This differs from p4 revert -a (revert all unchanged files, where resolving a file, even if no changes are made, counts as a change), in that it reverts files whose workspace content matches the depot content, including resolved files that happen to be identical to those in the depot.

The first command lists all unchanged files; the second command (running p4 -x and taking arguments, one per line, from standard input, abbreviated as "-") reverts each file in that list.

(This is the UNIX version of this command; it uses a pipe. Most operating systems have some equivalent way of performing these operations in series).

For more information about the -x option to p4, see the Global Options section.

Related Commands

To compare two depot revisions

p4 diff2

To view the entire contents of a file

p4 print


Perforce 2003.1 Command Reference
<< Previous Chapter
p4 describe
Table of Contents
Index
Perforce on the Web
Next Chapter >>
p4 diff2
Please send comments and questions about this manual to [email protected].
Copyright 1999-2003 Perforce Software. All rights reserved.
Last updated: 07/07/03