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 2014.2 update
This section provides a summary of the notable changes in this guide for the 2014.2 update release. For a list of all new functionality and major bug fixes in Perforce Server 2014.2, see the Perforce Server 2014.2 Release Notes.
Changes in the update
- Configurable defaults
The default values for
filesys.*configurables have been updated from
250M. See Configurables for details.
- Replication status clarification
In Evaluating replication status, the actions taken by local pull threads on a depot standy are clarified.
- Streamlined table of contents
Sub-sections for each command no longer appear in the table of contents, reducing the number of required pages notably.
- p4 journalcopy
Copies journal data from a master server to the local file system of a standby replica.
- p4 ldap
Allows you to create, edit, or delete LDAP configuration specifications, or test an existing LDAP configuration.
- p4 ldaps
Displays a list of LDAP configurations, or attempts to authenticate a users against active configurations.
- p4 prune
Removes unmodified files from a stream. This is equivalent to p4 obliterate, except that stream owners can run p4 prune without
Specifies the default method for identifying new users. Can be
perforce(the default), or
Specifies the path to a file containing one or more PEM-formatted certificates, which are used to verify an LDAP server's certificate when using SSL or TLS and
auth.ssllevelis >= 1.
Specifies the name of the LDAP configuration to use for authentication, and the order in which it should be used to search for a given user name.
Specifies the level of SSL certificate validation that should be used.
Specifies the time in seconds to wait before giving up on a connection attempt.
Can be disabled to prevent log rotation after journal rotation, which can be useful if journal and log rotations need to be on different schedules.
Can be enabled to cause edge servers to always promote shelved files to the commit server. Note that enabling this configurable has negative performance implications.
Can be enabled to store archive files in compressed text (
ctext) format instead of RCS format (
text). Doing so provides a performance boost in distributed environments, or where archive files are shared between servers.
0to prevent files of type
+Xfrom having their digest checked when transmitted from server to client.
When set on Unix platforms, enables the use of the p4 monitor command to display a list of locked files.
When enabled, this allows the server to automatically reload a workspace to a new edge server to which you successfully log in.
1on each replica to enable single-sign-on authentication for users in a distributed configuration.
Specifies the number of standby servers that must acknowledge a persisted transaction before the transaction is visible to a workspace server and before the client is notified of successful completion.
Specifies the minimum number of standby servers required to acknowledge a persisted transaction before the transaction is visible to a workspace server and before the client is notified of successful completion.
Specifies the counter name for the structured log file designed by
By default, files are always re-transferred after a failed submit. When set, the server checks whether files already exist in the expected archive location and avoids re-transferring files it already has when retrying a failed submit.
New environment variables
Updates and corrections
- Book title change
The title of this guide has changed from Perforce Command Reference to P4 Command Reference.
- p4 client
ChangeView:field has been added to the client specification, which restricts access to depot paths to a particular point in time. Files specified in this field are read-only and may not be submitted, and revisions committed after the specified version are not visible.
Clarified that when
allwriteis set and
noclobberis not set, that a safe synchronization is performed.
- p4 configure
The description for this command has been updated to better reflect its behavior and how server configurables can be managed.
Coverage of how to set client and proxy configurables has been added.
- p4 depot
Corrected the syntax in the example
- p4 depots
operatoruser may now run this command.
- p4 fstat
-roption was missing from the Syntax summary, and has now been included.
- p4 grep
An example demonstrating how to search for whole words has been added.
- p4 integrate
The description of the
-Rdoption has been corrected to describe deleting target files instead of branching target files.
- p4 interchanges
Added descriptions of the
- p4 istat
The minimum access level required to use this command been updated to
- p4 label, p4 tag
Corrected the spelling of the associated configurable to
- p4 lockstat, p4 logappend, p4 logparse, p4 logrotate, p4 logschema
Removed the indication that these commands are an argument to the p4 admin command.
- p4 logtail
Added a description of the behavior when a counter is associated with an error log.
- p4 monitor
This command has been updated to describe its new process management features.
- p4 opened
The list of opened file states has been updated to include all available states.
- p4 pull
The coverage of this command has been revised and expanded to better describe its various modes of operation, and its ability to display status information about pending transfers.
- p4 reload
A description of how to use this command to migrate a workspace from one edge server to another has been included.
The description of the
-poption was expanded to explain its interaction with
- p4 server
A description of the
User:field in the server specification has been added.
- p4 servers
Detailed information regarding the new
-Joption has been added, as well as expanded coverage of the information provided in this command's output.
- p4 shelve -d -f
Now deletes shelved files that are the source of pending resolves.
- p4 submit
A description of the file re-transfer behavior, and how it can be controlled with the new
--noretransferoption or the new
submit.noretransferconfigurable, has been added.
- p4 triggers
Added a link to the Perforce Server Administrator's Guide: Fundamentals, for expanded coverage on writing triggers.
- p4 trust
A description of the custom help for this command has been added, because you might not trust the specified server.
- p4 unload
Added a reminder that this command is not necessary when you wish to migrate a workspace from one edge server to another; the p4 reload automatically unloads the workspace as part of its operations.
- p4 unshelve -S
Now accepts a
-Poption to specify an arbitrary parent stream.
- p4 user
A description of the new
AuthMethod:field in the user specification has been added.
- Environment variables
The notes for
P4CHARSEThave been updated to describe the behavior when the Perforce server is running in Unicode mode.
A warning about the behavior of
P4NAMEon Windows when it is unset has been added.
The description of the behavior of
P4SSLDIRwhen it is unset has been corrected to include text that was previously missing.
db.peekinghas a new default value of 2, which enables lockless reads. The old default was
The description for
dm.user.resetpasswordnow indicates that it applies only to passwords for newly created users whose password was specified using the
Password:field in the user specification.
monitorhas new settings for monitoring commands, idle connections, locked files.
net.rfc3484has been corrected to indicate that, when enabled, this configurable only allows the operating system to determine whether to use IPv4 or IPv6 when a hostname is provided; the network protocol to use with a provided IP address is never determined by the operation system.
The default value for
net.tcpsizehas been increased from
rpl.labels.globalreplaces the incorrectly documented
server.locks.synchas a new default value of
0, which prevents p4 sync from taking a client workspace lock. The old default was
*The default value for configurables
filesys.has increased from 10M to 250M.