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:

Functional Area 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



Distributed version control

p4 init, p4 fetch, p4 push, p4 remote, p4 remotes, p4 unsubmit, p4 resubmit

Graph Depot

p4 grant-permission, p4 pubkey, p4 pubkeys, p4 repo, p4 repos, p4 revoke-permission, p4 show-permission

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.

What’s new in this guide for the 2017.1 release

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

New specification fields

p4 depot
The Type field in the p4 depot command’s fields can now take a value of graph, which signifies a depot that can contain Git repos.

New commands

p4 grant-permission
Assign the specified permission for the specified depot of type graph to the specified user or group.
p4 pubkey
Add, update, or delete an SSH public key on the Helix server.
p4 pubkeys
Display a list of the SSH public keys associated with a specific user.
p4 repo
Create, edit, or delete a repo specification.
p4 repos
Display a list of repos.
p4 revoke-permission
Remove from a user or group access to a depot of type graph or to a repo.
p4 show-permission
Display the permissions for a depot of type graph or a repo.

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…​

Overview of Helix version control concepts and workflows; Helix architecture, and related products.

Helix Versioning: An Overview

Administering the Helix versioning engine to support git repos and LFS files.


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.