Create a Universal File Repository
by Andy Clark
|
Quick Facts
Perforce SCM System 2002.2
Perforce Software Web: www.perforce.com
Phone: 510-864-7400
Price: Starts at $750 per seat
Quick Facts: Flexible multiplatform source control management system.
Pros: Provides a file repository you can access through TCP/IP from a variety of clients.
Cons: Requires extensive up-front planning and setup work. |
|
July 2003 Issue
The Perforce SCM System provides a flexible system for maintaining a file repository that's ideal for Software Configuration Management (SCM). The tool's flexibility also lets you integrate the file repository into your applications.
Perforce has all the capabilities of a robust SCM tool. It lets you place source code in a central repository and track code changes. You can lock source-code modules so that only one developer at a time can work with a file. It also allows multiple users to work on a file concurrently and provides tools that reconcile the different copies. Perforce tracks file versions and labels the versions that your software releases contain. You can group changes in order to identify the work done to correct a bug or implement a change.
Perforce has a tool that compares different file versions. It can also notify users of file changes. It even lets you define triggers that fire when files change. You can use them to run batch jobs that perform maintenance chores, a feature you can leverage to automate building and testing processes within your SCM.
You manage the Perforce repository through a server that must reside on a Unix or Windows box. Windows clients can work through a standalone, Explorer-like client; a Web client; several IDEs (including Visual Studio and VS.NET, among many others); a command-line interface; and API calls. Perforce clients are also available for Unix, VMS, Linux, Macintosh, and other platforms, making Perforce ideal for cross-platform development teams.
This flexibility also offers you the intriguing possibility of using Perforce's file repository for more than SCM. The API gives you the option of integrating the Perforce repository into applications that work with collaborative documents. This type of repository might not work well with heavily formatted documents, such as word-processing or spreadsheet files. However, Perforce could give you a useful toolset for managing collaborative flat-text, HTML, and XML files.
The Perforce staff is prompt, helpful, and knowledgeable, and the documentation is unusually thorough and well-written. This is one of the few products I've come across recently that provides complete paper documentation.
Perforce requires you to do a fair amount of planning and setup before it's functional. Your development group might need to give someone the job of administering the Perforce server and assisting in client configuration. Large staffs might require a full-time administrator. However, this is probably true of any SCM tool.
Perforce is a powerful tool for distributed development. The planning you must do to get the most out of it is well worth the effort, particularly for cross-platform development teams.
About the Author
Andy Clark is a consultant in the Richmond, Va., area. He holds PMP, MCSD, and SJCP certifications. Reach him at .
Back to top
|