Perforce 2005.1 User's Guide
Table of Contents
Perforce on the Web
Next Chapter >>
About This Manual

Table of Contents

Preface: About This Manual

Administering Perforce?

Please Give Us Feedback

Chapter 1: Product Overview

Perforce Server and Perforce Client Programs
Moving files between the clients and the server
File conflicts
Labeling groups of files
Branching files
Job tracking
Change review

Other Perforce Client Programs

Merge Tools
P4 resolve
Other merge utilities

Defect Tracking Systems
Perforce jobs
P4DTI integrations with third-party defect trackers

Plug-ins, reporting and tool integrations
IDE Plug-ins
P4Report and P4SQL

Chapter 2: Connecting to the Perforce Server

Before you begin

Setting up your environment to use Perforce
Verifying the connection to the Perforce server
Logging in to Perforce

Chapter 3: Perforce Basics: Quick Start

Underlying concepts

Setting up a client workspace
Naming your client workspace
Describing your client workspace to the Perforce server

Copying depot files into your workspace

Updating the depot with files from your workspace
Adding files to the depot
Editing files in the depot
Deleting files from the depot
Submitting your changes to the depot

Backing out: reverting files to their unopened states

Basic reporting commands

Chapter 4: Perforce Basics: The Details

What is a Client Workspace?

Mapping Depot files to your Client Workspace
Client workspace views
Using wildcards in views
Types of mappings used in views

Client Workspace Specification Options
Changing workspace views or moving your workspace root
Configuring line-ending conventions (CR/LF translation)
Multiple workspace roots for cross-platform work
Deleting a client workspace specification

Referring to Files on the Command Line
Local syntax and Perforce syntax
Using wildcards in Perforce commands and views
Name and string limitations for filenames and Perforce objects

Specifying File Revisions
Specifying file revisions with filenames
Specifying file revisions without filenames
Specifying ranges of revisions

Perforce File Types
Base file types
File type modifiers
File type keywords
Overriding file types with the typemap table
Preserving timestamps with the +m modifier
Expanding RCS keywords with the +k modifier

Forms and Perforce Commands
Changing the default forms editor
Scripting with Perforce forms
General Reporting Commands

Chapter 5: Perforce Basics: Resolving File Conflicts

Scheduling Resolves of Conflicting Files
Why "p4 sync" to schedule a resolve?
How do I know when a resolve is needed?

Performing Resolves of Conflicting Files
File revisions used and generated by "p4 resolve"
Types of conflicts between file revisions
How the merge file is generated
The "p4 resolve" options
Command line flags to automate the resolve process
Binary files and "p4 resolve"

Locking Files to Minimize File Conflicts
Preventing multiple resolves with p4 lock
Preventing multiple checkouts with +l files

Resolves and Branching

Resolve Reporting

Chapter 6: Perforce Basics: Miscellaneous Topics

Perforce Passwords
Setting passwords
Perforce passwords and authentication

Perforce tickets: logging in and out

Reconfiguring the Perforce Environment with $P4CONFIG

Command-Line Flags Common to All Perforce Commands

Working Detached
Finding changed files
Updating the depot with changed files
Refreshing files

Renaming Files
Revision histories and renamed files

Recommendations for Organizing the Depot

Chapter 7: Changelists

Working with the Default Changelist

Creating Numbered Changelists Manually

Working With Numbered Changelists

Automatic Creation and Renumbering of Changelists
When Perforce renumbers changelists

Deleting Changelists

Changelist Reporting

Chapter 8: Labels

Labels or changelist numbers?

Using labels
Tagging files with a label
Untagging files
Previewing tag's results
Listing files tagged by a label
Listing labels that have been applied to files
Referring to files using a label
Deleting labels
Creating a label for future use
Using label views
Using labels to record workspace configurations
Preventing inadvertent tagging and untagging of files

Differences between p4 tag and p4 labelsync
How p4 tag works
How p4 labelsync works

Label Reporting

Chapter 9: Branching

What is Branching?

When to Create a Branch

Perforce's Branching Mechanisms: Introduction

Branching and Merging, Method 1: Branching with File Specifications
Creating branched files
Propagating changes between branched files
Propagating changes from branched files to the original files

Branching and Merging, Method 2: Branching with Branch Specifications

Branch Specification Usage Notes

Integration Usage Notes

Deleting Branches

Advanced Integration Functions
Integrating specific file revisions
Re-integrating and re-resolving files

How Integrate Works
The yours, theirs, and base files
The integration algorithm
Integrate's actions

Integration Reporting

For More Information

Chapter 10: Job Tracking

Job Usage Overview
Using the default job specification
Using a custom job specification

Viewing jobs by content with jobviews
Finding jobs containing particular words
Finding jobs by field values
Using and escaping wildcards in jobviews
Negating the sense of a query
Using dates in jobviews
Comparison operators and field types

Linking Jobs to Changelists
Linking jobs to changelists with the JobView: field
Linking jobs to changelists with p4 fix
Linking jobs to changelists when submitting
Automatic update of job status
What if there's no status field?

Deleting Jobs

Integrating with External Defect Tracking Systems

Job Reporting Commands

Chapter 11: Reporting and Data Mining

File metadata
Relationships between client and depot files
File contents

Viewing changelists that meet particular criteria
Files and jobs affected by changelists


Branch and Integration Reporting

Job Reporting
Basic job information
Jobs, fixes, and changelists

Reporting for Daemons

Listing Users, Workspaces, and Depots

Special Reporting Flags

Appendix A: Installing Perforce

Getting Perforce

UNIX Installation
Download the files and make them executable
Creating a Perforce server root directory
Telling the Perforce server which port to listen to
Starting the Perforce server
Telling Perforce clients which port to talk to
Stopping the Perforce server

Windows Installation
Windows services and servers
Starting and stopping Perforce

Appendix B: Environment Variables

Setting and viewing environment variables

Appendix C: Glossary


This manual copyright 1997-2005 Perforce Software.

All rights reserved.

Perforce software and documentation is available from You may download and use Perforce programs, but you may not sell or redistribute them. You may download, print, copy, edit, and redistribute the documentation, but you may not sell it, or sell any documentation derived from it. You may not modify or attempt to reverse engineer the programs.

Perforce programs and documents are available from our Web site as is. No warranty or support is provided. Warranties and support, along with higher capacity servers, are sold by Perforce Software.

Perforce Software assumes no responsibility or liability for any errors or inaccuracies that may appear in this book.

By downloading and using our programs and documents you agree to these terms.

Perforce and Inter-File Branching are trademarks of Perforce Software. Perforce software includes software developed by the University of California, Berkeley and its contributors.

All other brands or product names are trademarks or registered trademarks of their respective companies or organizations.

Perforce 2005.1 User's Guide
Table of Contents
Perforce on the Web
Next Chapter >>
About This Manual
Please send comments and questions about this manual to [email protected].
Copyright 1997-2005 Perforce Software. All rights reserved.
Last updated: 05/12/05