Perforce the fast software configuration management system




















CVS- Concurrent version system. Rational Clear Case. SVN- Subversion. IBM Rational team concert. Top ten tools for configuration management. Figure 1: With Perforce Shelving, users can view both active work in progress and files that are on-hold.

Perforce Software today released version This new release offers a variety of major productivity improvements with the addition of shelving, real-time metadata replication and additional functionality for working offline. Shelving improves team collaboration With the new shelving feature, developers can cache modified files in the Perforce Server without first having to check them in as a versioned change see Figure 1. Shelving improves team collaboration and gives developers more flexibility in managing multiple projects.

For example, Perforce Shelving allows users to:. New features improve developer productivity while working offline Developers can now work disconnected, with all file changes and history preserved when the user comes back online. With the Perforce Visual Client, users can easily edit any file taken offline, add new files, and mark existing files for deletion. Sequential changes can be scheduled for submission to the server, simplifying reconciliation of changes made when connectivity is restored.

In addition to the normal commands for editing, there is a fair number of reporting commands such as p4 describe to learn more about a change, and p4 filelog to list the history of a file. All of these commands are easy and intuitive to use. There is also a p4 help command, as well as the man page. On many other systems the branch specification is in some way part of the version numbering or version selection mechanism.

This is counter intuitive and is often a cause of confusion. Other systems also make branches of individual files. Perforce handles branch naming in the same way that you would without a code-management system. By making the branch naming a part of the directory tree structure, Perforce has created a very natural way to interact with and think about branches. In this way a branch is simultaneously created for the complete project, not just for an individual file.

This method also helps to keep the branches consistent. A copying algorithm in the server prevents this approach from using more disk space than other approaches. Above, I have described the normal use of the Perforce branching mechanism.

However, the Perforce branching mechanism is even more powerful. It is possible to specify that file trees or individual files are branches of each other. It is even possible to designate two totally unrelated files or directory trees as branches and migrate changes between them.

The specification of branches is done by a branch view. The branch view can contain a simple or arbitrarily complex mapping between file names in the two branches. Perforce uses the powerful command p4 integ and p4 resolve to integrate changes between the branches and to resolve conflicts.

Perforce is a very fast, code-management system. Code-management actions, such as labelling, checking in P4 submit and checking out p4 edit are several magnitudes faster than ClearCase, another code-management system.

With Perforce, all normal work such as editing and compiling is done on local files in your work area, making Perforce much faster than most other systems.

Perforce has a number of advanced features. I cannot list all of them much less describe them all in this space, but I will mention a few. Perforce can have distributed depots. You can use Perforce with IP-tunneling and firewalls. Perforce can have change submission triggers for external processes. Perforce has support for off-line clients. That is, it is possible to disconnect a client computer and make changes to the local files in the workspace, and afterwards let Perforce detect the changes and bring them into the depot.

The license file determines how many users the server accepts. Without a license file, there can be only 2 users. The cost of purchasing Perforce i. If you purchase Perforce, they e-mail the license file to you. Perforce has announced:. This includes upgrades, but not support.

Execution of a Perforce non-commercial license agreement is required. We cannot guarantee non-commercial users support, but we try not to discriminate between commercial users, evaluation users and non-commercial users. Perforce has provided excellent support to me. No matter how absurd the question or how absurd the task I am attempting, I have always received a good answer by e-mail within 18 hours.

Perforce has remarkably good e-mail support. I have asked other customers of Perforce on the Net, and they have all been pleased. I find Perforce to be a good product with good support. I find other CM products that I have used professionally to be remarkably poor by comparison. Perforce is not just a technically good product—it is also easy and intuitive to use. Considering the favorable licensing policy of Perforce, I recommend you download Perforce and test it for yourself.



0コメント

  • 1000 / 1000