Title: Perforce
1Perforce
The Fast Software Configuration Management System
2Perforce
- Q. How to safely perform the sharing of files
among multiple users ? - A. There are software configuration
management tools to manage any sort of
transactions. One of them is Perforce.
3Whats good about Perforce ?
- Fast
- Comparatively cheap
- Runs on most platforms
- Supports parallel development
- Easy to administer
4Topics of Discussion
- Perforce Architecture
- Parallel Development and Branching
- Networking
- Portability and Supported Platforms
- Atomic Change Transaction Model
- Configuration Labels
- Comparison with ClearCase
- Summary and Conclusion
5Perforce Architecture
Client1
Pp4 sync
Server
Depot a central file repository
p4 submit
ClientN
6Perforce Server
implements optimized database services based on
the Berkeley DB database package.
Server
a Data Manager
a Request Handler
sequences actions to carry out client requests
and manages communication with the client.
a File Librarian
a highly efficient file archiver that stores
repository files on disk local to server.
7Perforce Client
- Client workspace
- Client name
- Client root
- Client view
- Client specification
8Perforce Client
Client cleanup-yzvereva Owner
yzvereva Description Created by
yzvereva. Root /home/yzvereva/cleanup Options
modtime, noclober View //depot/ips/projects/c
leanup///cleanup-yzvereva/
9Parallel Development and Branching
- Two forms of parallel development
- Users can work on files in common code line at
the same time. - 2. Perforce supports multiple parallel or related
code lines in the depot.
10Branching
- Branching is the creation of variant codelines
- from other codelines.
11Perforce Client Views
Depot
Branch 0
Branch 1
Client
View Line 1
View Line 2
Branch n
12Atomic Change Transaction Model
- Perforce
- supports
- submitting multi-
- file changes,
- and each
- change is
- uniquely and
- permanently
- identified.
Change new Client hewey2-yzvereva User
yzvereva Description Fixed warnings in
pbmdrvr and psdrvr, added a new null
driver. Files //depot/hewey/odhdw/nulldrv
r.c add //depot/hewey/odhdw/pbmdrvr.c
edit //depot/hewey/odhdw/psdrvr.c
edit
13Networking
- Uses TCP/IP-based streaming protocol.
- Works equally well on a LAN or around the world.
- Provides 100 interoperability in heterogeneous
network environments.
14Portability and supported platforms
- Implemented portably in C
- Server runs on most Unix platforms and on Windows
NT - Clients
- - any Unix platform
- - Windows NT, 95
- - OS/2
- - Macintosh
- - BeOS, QNX, Open VMS
15Configuration Labels
- Labels provide the ability to store a named
- specification of a particular set of file
revisions - for later access.
- p4 sync _at_release2.0.1
16Other SCM Systems
- ClearCase
- CVS
- PVCS
- Visual Sourcesafe
17ClearCase vs. Perforce
Fast
Slow
18ClearCase vs. Perforce
19ClearCase vs. Perforce
20Conclusion
- A tool is only as good as you use it,
- the saying goes.
www.perforce.com
21Any questions ?