About This Manual
This manual documents every Perforce command, environment variable, and configurable. This manual is intended for users who prefer to learn by means of Unix-style man pages, and for users who already understand the basics of Perforce and need to quickly find information on a specific command.
The following table provides an index to the P4 Command Reference by functional area:
If you'd prefer to learn the concepts on which Perforce is based, or you prefer a style featuring more examples and tutorials than what you find here, see the P4 User's Guide, available from our web site at: http://www.perforce.com/documentation.
If there's anything we've left out that you think should be included,
let us know. Please send your comments to
What's new in this guide for the 2015.1 update
This section provides a summary of the notable changes in this guide for the 2015.1 update release. For a list of all new functionality and major bug fixes in Perforce Server 2015.1, see the Perforce Server 2015.1 Release Notes.
- p4 ldapsync
Updates the users in the specified Perforce groups to match the members in the corresponding LDAP groups. The correspondence between a Perforce group and an LDAP group is defined in the Perforce group spec. If you do not specify a group name, all groups with LDAP configurations are updated.
- p4 init
Creates a new personal server in a distributed versioning environment.
- p4 clone
Clones a new personal server from a shared server in a distributed versioning environment.
- p4 switch
Switches to a new stream, optionally creating it (in a distributed versioning environment).
- p4 remote
Defines a connection to a shared server in a distributed versioning environment.
- p4 remotes
Lists the known shared servers in a distributed versioning environment.
- p4 fetch
Copies files from a shared server to a personal server in a distributed versioning environment.
- p4 push
Copies files from a personal server to a shared server in a distributed versioning environment.
- p4 unsubmit
Unsubmits a change, leaving the work in a shelf, in a distributed versioning environment.
- p4 resubmit
Resubmits unsubmitted changes, in a distributed versioning environment.
- p4 zip
Packages a set of files for use by the p4 unzip command in a distributed versioning environment.
- p4 unzip
Imports files from a package created with the p4 zip command in a distributed versioning environment.
New command options and other command changes
- p4 add
- p4 admin setldapusers
Allows you to convert all existing non-super users to use LDAP authentication. The command changes the
AuthMethodfield in the user specification for each user from
superusers want to use LDAP authentication, they must set their
- p4 interchanges
The command now also reports changes that consist solely of ignored integrations if those changes have not yet been integrated into the target.
- p4 journalcopy
- p4 passwd
If you use the
-Ooption, you must use the
- p4 pull
- p4 reconcile
You may use p4 rec as a synonym for p4 reconcile.
Other changed behavior: files opened for delete and present in your workspace that don't have pending resolve records are reopened for edit.
- p4 renameuser
- p4 revert
-Coption allows you to revert another user's open files.
-aoption allows you to revert files opened for add that are missing from the workspace.
- p4 servers
- p4 status
Displays files already opened in addition to files that need to be reconciled.
- p4 stream
If you specify no arguments for the command, the target defaults to the current stream, and the source defaults to the current stream parent. You can also specify the stream as a directory name relative to the current stream depot.
The new options
mergedownspecify whether the merge flow is restricted or whether merge is permitted from any other stream. For example, the
mergeanyoption would allow a merge from a child to a parent with no warnings.
- p4 submit
--paralleloption specifies that multiple files should be transferred in parallel, using independent network connections from automatically-invoked child processes. In order to run a parallel submit, the configurable
net.parallel.maxmust be set to a value greater than
- p4 sync
-roption reopens files that are mapped to new locations in the depot, in the new location. By default, open workspace files remain associated with the depot files that they were originally opened as.
The command now automatically resolves files where the previously synced version does not differ from the newer depot version.
- p4 unlock
-roption unlocks the files associated with the specified client that were locked due to a failed p4 push command.
New specification fields
- p4 group
New fields include
LdapUserAttribute. These are used with the p4 ldapsync command.
- p4 server
New optional field
ExternalAddressspecifies the external address used for connections to a commit server. This field must be set for the edge server to enable parallel submits in a federated environment.
Set on the server to support filenames longer than 260 characters on Windows platforms.
Specifies whether to automatically create users on login. The
auth.default.method configurablenow only determines whether the user is authenticated against an LDAP directory or against Perforce's internal database.
Specifies whether changes can be fetched in a distributed versioning environment.
Specifies whether changes can be pushed in a distributed versioning environment.
Specifies whether submitted changes can be rewritten.
Has been deprecated.