Reviews (1-10 of 10)
Each lab site has its own set of developers that operates independently but we are moving towards more collaboration and sharing software between the groups. One site has standardized on Perforce and won't do any software development without using it and other sites are now moving towards using it based upon the experience of the current Perforce users. We use it not only for multi-developer teams but also as a way to back up code bases and do revision control.
Read this authenticated review
Once you get used to it, it is straightforward to use and it has a very large feature set for a free software package. It is free for small teams to use, which helps with a larger adoption later down the road. Also, Perforce seems to be the defacto industry standard so once you learn it, you should be able to use it at other developer positions.
September 30, 2019
Score 9 out of 10
Perforce is the main code version control tool that we utilize at our company. It is incredibly useful to keep track of our code history and branches. The visual client is very easy to use and presents the directory structure in a convenient way. It is easy to install on any system and the user interface is consistent across platforms. Perforce has great merge optimization that is extremely useful in day to day operations.
- Merge algorithm is smart and utilizing the visual interface to do merges makes them easier to digest.
- Easy to set up on multiple platforms and architectures and is well supported on all of them.
- Visual interface has many tools and customization options that help to optimize and personalize workflow.
- Updating Perforce is somewhat challenging, especially on Linux Systems.
- Sometimes settings disappear.
- In order to customize the font settings, you must restart the visual client.
- Perforce could display its progress in a clearer way.
Read Kaleb-John Loo's full review
Perforce is a perfect choice for large or small corporations who need a code version control tool. It is highly capable of handling the tasks that a version control tool should with the added benefit of having an easy-to-use visual client with the option of the command-line interface. It is very useful when doing a lot of merges and branching as it has a good workflow for resolving any conflicts. It is also good if you prefer using visual interfaces since it is built by the same people and is optimized to execute common commands and workflows.
October 25, 2017
Score 8 out of 10
Having a solid source control solution is a necessity for any software company. The product development department for my organization uses Perforce for software version control. It solves a core business problem for our department by allowing us to track changes made to the main codebase, as well as branch new versions of said codebase.
- The Perforce visual client makes it easy to track changelists and file history
- Very stable with high performance
- Diff tool makes identifying code changes a snap
- Works nicely with Visual Studio via plugin
- Performing integrations is somewhat confusing for new users
- Managing multiple workspaces can get difficult
- Backing out changes can be problematic if split across multiple changelists
Read Hank Jones's full review
Perforce is great for managing a large scale codebase with a fairly large engineering team. It is fast, powerful, and has solid security features to lockdown specific branches. Perforce is best suited for established software companies with the resources to set up and maintain a Perforce server. Due to the difficult setup, cost, and learning curve, Perforce is not a great fit for small software development team or startups.
October 16, 2017
Currently, everyone on our Development team uses Perforce, including QA. It's our primary source control app.
- It's been incredibly reliable. I can't think of a single bug I've run into in five years.
- Helpful integration APIs that allow me to use it with other apps.
- Its Diff tools are easy to work with and helpful.
- The UI can be hard to navigate for people new to the product.
- It could do with some simplification in areas such as connecting to servers, etc.
- UI seems dated.
Read Matt King's full review
I haven't run into any scenarios where the app wouldn't be suitable for something, but our small team depends on it and it hasn't let us down yet. I don't have any experience using it for larger teams, so I don't know if it's as useful in that respect or not.
Perforce, for many years, was the primary version control tool in our organization. In the product department, we recently have switched to different software, but we still use Perforce for custom projects. Perforce is integrated within a .Net environment (ASP.Net and ASP MVC projects). Perforce is very scalable; it can be used from small projects to enterprise level projects. It has a learning curve, but after spending some time, it allows for fast and easy use.
- Perforce Visual tool (P4V) is very extensive and pretty well organized. Perforce has a built in history tool.
- Very good history view: you can see when your code was last changed, committed, and by whom.
- You can add a lot of columns and history view, and sort a file by any of the columns.
- I was having a hard time learning it. Even if you are an experienced developer, there is some learning curve.
- Can be slow when working with large data sets at once.
- When working on multiple workspaces on the same machine, Perforce can make it difficult not to mess up the code.
Read Filip Witkowski's full review
The files view and history view are very clear. You can configure the information you want to see by adding new columns (from very large set of options). It makes work on versioning very pleasant. I use it to see my last changes, then compare with the current version, or I can see who has overwritten my version and ask that developer for details of his/her changes. This history view also gives an easy way to compare two chosen versions and revert to the version you need in just seconds.
July 08, 2015
Perforce is the source control management system of choice for our entire organization. We use it to safely version content of all kinds; code, scripts, art, and documentation. It is shared globally across our organization and accessible externally to our product licensees. It has been used for every product we've shipped as well as all our active projects. We make use of all the major features like branching and shelving as well as p4web.
- Perforce handles code exceptionally fast and provides a deep toolset. The ability to quickly see differences via the revision history, revision graph, and time lapse view are invaluable for tracing differences over time and across branches/integrations.
- Perforce does a decent job of maintaining our security policies across different areas of code. We can block access to various branches and directory structures using the various administration tools available. This ensures the right people have the right access at the right time. We can also temporarily disable check in access and lock down a source tree when necessary.
- The P4 client, P4V, is a clean and intuitive tool. There are multiple ways of viewing the depot with powerful search commands and easy access to the more advanced P4 concepts all from within the GUI. Shelving, merging, integrating, and syncing are all easy to do.
- P4V, in the interest of stability, seems to have taken a few steps back in its ability to perform asynchronous operations. Once upon a time I was able to sync and perform resolves on code at the same time and now it seems to wait for all operations and does everything much more serially.
- P4VS, the integration with Microsoft Visual Studio, is still fairly new to the product suite. We have very complicated VS projects and it can take some time for P4VS to sync its status with the P4 server. Additionally, there are still a few rough edges in its features, such as the limited history dialog and some crash/instability issues when an automated checkout of file about to be edited doesn't get a response from the server quickly. It is still good to see that they wrote their own tool rather than stick with the antiquated SCC APIs offered by Microsoft.
- If I was being nit picky, I would say it would be nice for P4 to consider integrating more "content" versioning tools for various binary formats. There is plenty "non text" content to be version controlled, and to be able to diff versions right inside P4 would be invaluable.
- Working across multiple workspaces on the same machine can sometimes be difficult when various P4 products are used at the same time (say P4VS, P4V, P4EXP). It would be nice if workspace switching, the P4 env variables, and the various P4.ini settings were easier to reconcile and visualize from within the various client tools.
- Some really advanced/complicated client specs (using ... and * for example) can slow down integrating and other P4V operations.
- While I haven't experienced this directly, it is my understanding that syncing large data across large distances can be slow and that the various proxy tools could use improvement. I do know that various switches/options have been exposed to make various tasks require less data transfer to the client to improve this.
Read Josh Markiewicz's full review
While I'm not well versed in some of the new version control paradigms (like Git), I find that Perforce and its entire product suite have stood the test of time and continues to be a sound choice in source control management. It is great at code versioning and I haven't found a scenario where it didn't work well. Check ins, shelving, diffing, revision history, and branching all work exactly as needed when working on a product through all phases of development. Integration with Visual Studio is good and for the most part non intrusive. We have a very large code base that puts Perforce through its paces and it performs admirably.
August 22, 2014
Being a large company that spans many continents, and having merged with other companies in the past, we have many different groups who've decided on how they develop and store data all on their own. Because of these seemingly independent choices, we've adopted the use of various revision control packages, including Perforce, as well as the popular host of other options, such as Git and SVN. Each package brings advantages as well as hindrances, from the very easy to get start but not as well supported nor portable SVN, to the very portable yet hard to work with and get going Git; and finally Perforce, a sort of in-between: easy to get started and pull the files you want, yet difficult to perform more complicated tasks such as branching and integrating. Supporting a rich GUI for most tasks, as well as a command-line interface for automated or more complicated tasks, Perforce can find favor with users of varying need and technical proficiency.
- Perforce has a feature rich GUI making it somewhat easy to find files, and historical changes, as well as utility features to better visualize changes over time.
- The concept of change lists, client specs, and branches is unique to a large extent, and adds value in high customization for each user.
- Perforce is well supported, and has plenty of information on use both officially, and through other user experience as documented on the web.
- Perforce tends to feel backwards in how it approaches certain tasks, like branching and integrating - even once you figure out how it wants you to perform these tasks, you will likely forget when it comes around to the next time you need to do them again.
- Perforce has a higher price tag, comparatively.
- Perforce make some tasks very easy, and yet other tasks very difficult - it doesn't always seem to have found its target user's proficiency.
Read Quentin Smith's full review
The most important question to answer when choosing between Perforce and other [version control] packages is how technically proficient your users will be. Most developers can easily get the file they need, while some will want more specific file sets and will need some assistance or documentation to get their client spec just the way they want. For managers, who tend to be less technically on average, they will probably need much more help up front and over time. And for either of these groups, certain tasks will become difficult, however Perforce is processional and robust, and those who have the time and patience will come to appreciate the added power at their fingertips.
It's the backbone of our version control for our builds. It's used by everyone in the organization to keep current. It mskes sure everyone has the latest content and code.
Read Chris Mielke, PMP, CSM's full review
Small organizations may not need something this robust. An organization needs to look at how many users and the approximate number of files they will need to track.
November 11, 2015
As the primary tool for version control across our organization, Perforce provides an enterprise level solution for the management of our various products and software branches, among other things. Perforce branching, action triggers, locking, and other features make it ideal for the type of work historically done by CDK Global (formerly ADP Dealer Services). It supports the production of highly scalable big data services, agile development of websites and other marketing materials spanning thousands of automotive dealerships, and much more.
- The branching mechanisms in Perforce allow for an enormous codebase to be duplicated into release versions weekly with little impact upon things such as the speed of queries against the version control.
- Action triggers permit such things as automated builds of software versions, dynamic messaging when issues are identified either within or prior to a build process, and much more.
- Locking provides the ability to prevent modifications of stable, tested versions in order to ensure validity when they are released.
- As new tools like Git enter the market, enterprise solutions like Perforce are often seen as rigid and overly complex.
- Occasionally, the branching system in Perforce seems to fail to retain proper branching history, making it difficult to track the original source of changes if they were initiated across multiple branching operations.
- When a change made has inadvertently caused side effects, it can be necessary to back out code changes. This process is difficult to do when the changes needing back-out are spread across multiple changelists for the same set of files. It can be even more difficult if any of those changelists contain files that should not be backed out, though this latter point partly indicates a flaw in the developer's process.
Read this authenticated review
For large-scale codebases with fixed and regular releases that do not follow a continuous delivery paradigm, Perforce is certainly well suited. In projects that are small and distinctly separated from other discrete (though potentially dependent) units, the benefits of the Perforce tool may not be as clear of a victor over other systems.
Perforce was used as version control software in my entire organization. Engineers used it to manage code.
- Great command line support.
- Great compare text files tool.
- Have to check out code before modifying, preventing from accidentally modification.
- UI tool is not intuitive.
- Hard to manage multiple branches.
Read this authenticated review
Perforce is not good for a large team with multiple branches.