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. This manual is divided into the following parts:

  • The first part lists commands in alphabetical order. The table below provides a function-based grouping of this same set of commands.
  • The second part lists environment and registry variables in alphabetical order.
  • The third part contains miscellaneous reference information about global options, file specifications, views, file types, and configurables.

The following table provides an index to the commands documented in this manual by functional area:

Function Where to look


p4 help, p4 info, “File Specifications”, “Views”, “Global Options”, “File Types”

Client workspace

p4 clean, p4 client, p4 clients, p4 flush, p4 have, p4 ignores, p4 sync, p4 update, p4 where, p4 workspace, p4 workspaces


p4 add, p4 attribute, p4 copy, p4 delete, p4 diff, p4 diff2, p4 dirs, p4 edit, p4 files, p4 fstat, p4 grep, p4 move, p4 lock, p4 print, p4 reconcile, p4 rename, p4 revert, p4 status, p4 sizes, p4 unlock


p4 change, p4 changelist, p4 changes, p4 changelists, p4 describe, p4 filelog, p4 opened, p4 reopen, p4 review, p4 shelve, p4 submit, p4 undo, p4 unshelve


p4 fix, p4 fixes, p4 job, p4 jobs, p4 jobspec

Branching and Merging

p4 branch, p4 branches, p4 copy, p4 cstat, p4 integrate, p4 integrated, p4 interchanges, p4 istat, p4 label, p4 labels, p4 labelsync, p4 list, p4 merge, p4 populate, p4 tag, p4 resolve, p4 resolved, p4 stream, p4 streams


p4 admin, p4 archive, p4 cachepurge, p4 configure, p4 counter, p4 counters, p4 dbschema, p4 dbstat, p4 depot, p4 depots, p4 diskspace, p4 journals, p4 key, p4 keys, p4 license, p4 lockstat, p4 logappend, p4 logger, p4 logparse, p4 logrotate, p4 logschema, p4 logstat, p4 logtail, p4 monitor, p4 obliterate, p4 ping, p4 property, p4 proxy, p4 pull, p4 reload, p4 renameuser, p4 replicate, p4 restore, p4 reviews, p4 server, p4 serverid, p4 servers, p4 triggers, p4 typemap, p4 unload, p4 verify


p4 group, p4 groups, p4 login, p4 logout, p4 passwd, p4 protect, p4 protects, p4 tickets, p4 trust, p4 user, p4 users, P4CLIENTPATH, P4SSLDIR, P4TRUST



If you’d prefer to learn the concepts on which Helix is based, or you prefer a style featuring more examples and tutorials than what you find here, see the Helix Versioning Engine User 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 manual@perforce.com.

What’s new in this guide for the 2016.2 release

This section provides a summary of the notable changes in this guide for the 2016.2 release. For a list of all new functionality and major bug fixes in Helix Versioning Engine 2016.2, see the Release Notes.

New and changed configurables and environment variables

New configurables are described in “Configurables”.

Setting the new server.locks.global configurable to 1 makes running p4 lock from an edge server take global locks on the commit server by default.

New specification fields

p4 client
The Type field in the p4 client command’s fields can now take a value of partitioned, which has the same effect as the existing readonly value except that you can edit and submit using this client.

New commands

p4 undo
Undo a range of revisions.

New command options and other command changes

p4 client
New -T option allows you to specify the type of client to create.
p4 protect
You can now grant access to the p4 protect command for a particular path, to a user or group.

Helix documentation

The following table lists and describes key documents for Helix users, developers, and administrators. For complete information see the following:


For specific information about…​ See this documentation…​

Introduction to version control concepts and workflows; Helix architecture, and related products.

Introducing Helix

Using the command-line interface to perform software version management and codeline management; working with Helix streams; jobs, reporting, scripting, and more.

Helix Versioning Engine User Guide

Basic workflows using P4V, the cross-platform Helix desktop client.

P4V User Guide

Working with personal and shared servers and understanding the distributed versioning features of the Helix Versioning engine.

Using Helix for Distributed Versioning

p4 command line (reference).

P4 Command Reference, p4 help

Installing and administering the Helix versioning engine, including user management, security settings.

Helix Versioning Engine Administrator Guide: Fundamentals

Installing and configuring Helix servers (proxies, replicas, and edge servers) in a distributed environment.

Helix Versioning Engine Administrator Guide: Multi-site Deployment

Helix plug-ins and integrations.

IDEs: Using IDE Plug-ins
Defect trackers: Defect Tracking Gateway Guide
Others: online help from the Helix menu or web site

Developing custom Helix applications using the Helix C/C++ API.

C/C++ API User Guide

Working with Helix in Ruby, Perl, Python, and PHP.

APIs for Scripting

Syntax conventions

Helix documentation uses the following syntax conventions to describe command line syntax.

Notation Meaning


Monospace font indicates a word or other notation that must be used in the command exactly as shown.


Italics indicate a parameter for which you must supply specific information. For example, for a serverid parameter, you must supply the id of the server.


Square brackets indicate that the enclosed elements are optional. Omit the brackets when you compose the command.

Elements that are not bracketed are required.


Ellipses (…​) indicate that the preceding element can be repeated as often as needed.

element1 | element2

A vertical bar ( | ) indicates that either element1 or element2 is required.

Please give us feedback

We are interested in receiving opinions on this manual from our users. In particular, we’d like to hear from users who have never used Perforce before. Does this guide teach the topic well? Please let us know what you think; we can be reached at manual@perforce.com.

If you need assistance, or wish to provide feedback about any of our products, contact support@perforce.com.