Overview
ProductRatingMost Used ByProduct SummaryStarting Price
Git
Score 10.0 out of 10
N/A
N/AN/A
Mercurial
Score 3.0 out of 10
N/A
Mercurial is a free, distributed source control management tool. It handles projects of any size and boasts an easy and intuitive interface. Mercurial handles projects of any size and kind. Every clone contains the whole project history, so most actions are local, fast and convenient. Mercurial supports a multitude of workflows and can enhance its functionality with extensions.N/A
Perforce P4
Score 7.2 out of 10
N/A
Perforce P4 (formerly Helix Core) is the company's version control and peer code review solution. Perforce offers add-on products for code review for free, and Git support products.N/A
Pricing
GitMercurialPerforce P4
Editions & Modules
No answers on this topic
No answers on this topic
No answers on this topic
Offerings
Pricing Offerings
GitMercurialPerforce P4
Free Trial
NoNoNo
Free/Freemium Version
NoNoNo
Premium Consulting/Integration Services
NoNoNo
Entry-level Setup FeeNo setup feeNo setup feeNo setup fee
Additional Details
More Pricing Information
Community Pulse
GitMercurialPerforce P4
Considered Multiple Products
Git
Chose Git
The two main alternatives to Git that I know about are Mercurial and Subversion. I've never used either one, but I know a bit about Subversion. From what I remember, Subversion requires a server. I don't anyone using any other source control other than Git, it seems to have …
Chose Git
What I know is Perforce and CVS, such other repos tend to store deltas while Git stores the snapshots of the stuff as their commit ID's. This is what makes Git much much faster when you are developing on huge repos, since the checkouts are just instantaneous.
Chose Git
Git is by far the best version control system out there. It's open source, free, and fast. No other version control system I've ever used has had all three features.
Chose Git
Those products work well with small teams but when you have a large company with a huge group of developers working they introduce complexity at the moment of keeping an eye on the code and deal with versioning stuff. Every single tool nowadays offers integration with Git which …
Chose Git
Git is my favorite among all of the version control systems out there. It follows the Linux software philosophy of being built by many loosely coupled and small components that do one thing well. It's incredibly open, and its adoption in the open source community seems to be …
Mercurial
Chose Mercurial
When we chose Mercurial it was more popular from perspectives than Git and we have too many problems with the Microsoft team foundation solution. We also want to move from a centralized version of source control to a distributed one. We also were working more and more via the …
Perforce P4
Chose Perforce P4
Perforce has a better built native visual client that is much simpler to use than Git's. It has a lot of optimizations in the workflow that can execute common patterns during a usual workday. Perforce also has an easier to understand method of presenting merge conflicts and …
Chose Perforce P4
Git is great, I love Git. But it's not great for dealing with binary assets, even when using Git LFS. Locking is not as simple as on perforce. Git presents some problems on using for non-tech people it can get overwhelming and tech people have to come by and help.
Chose Perforce P4
Subversion
  • missing many of the features that Perforce provides, but
  • a much more lightweight versioning system
Chose Perforce P4
Perforce has more features than SVN. However even the simpler tasks in SVN require a degree more technical aptitude with Perforce. Git offers most of the same features, however most of these are only really supported via the command-line in Git, where as most tasks can be …
Features
GitMercurialPerforce P4
Version Control Software Features
Comparison of Version Control Software Features features of Product A and Product B
Git
-
Ratings
Mercurial
-
Ratings
Perforce P4
7.9
1 Ratings
9% below category average
Branching and Merging00 Ratings00 Ratings8.01 Ratings
Version History00 Ratings00 Ratings8.01 Ratings
Version Control Collaboration Tools00 Ratings00 Ratings8.01 Ratings
Pull Requests00 Ratings00 Ratings8.01 Ratings
Code Review Tools00 Ratings00 Ratings8.01 Ratings
Project Access Control00 Ratings00 Ratings8.01 Ratings
Automated Testing Integration00 Ratings00 Ratings8.01 Ratings
Issue Tracking Integration00 Ratings00 Ratings7.01 Ratings
Branch Protection00 Ratings00 Ratings8.01 Ratings
Best Alternatives
GitMercurialPerforce P4
Small Businesses
GitHub
GitHub
Score 9.1 out of 10
Git
Git
Score 10.0 out of 10
Git
Git
Score 10.0 out of 10
Medium-sized Companies
GitHub
GitHub
Score 9.1 out of 10
Git
Git
Score 10.0 out of 10
Git
Git
Score 10.0 out of 10
Enterprises
Perforce P4
Perforce P4
Score 7.2 out of 10
Perforce P4
Perforce P4
Score 7.2 out of 10
Git
Git
Score 10.0 out of 10
All AlternativesView all alternativesView all alternativesView all alternatives
User Ratings
GitMercurialPerforce P4
Likelihood to Recommend
10.0
(36 ratings)
9.0
(1 ratings)
6.3
(15 ratings)
Likelihood to Renew
10.0
(1 ratings)
-
(0 ratings)
6.6
(5 ratings)
Usability
9.0
(1 ratings)
-
(0 ratings)
7.0
(3 ratings)
Availability
-
(0 ratings)
-
(0 ratings)
9.0
(1 ratings)
Performance
-
(0 ratings)
-
(0 ratings)
6.0
(1 ratings)
Support Rating
8.5
(11 ratings)
-
(0 ratings)
9.6
(3 ratings)
Implementation Rating
9.0
(1 ratings)
-
(0 ratings)
7.0
(1 ratings)
User Testimonials
GitMercurialPerforce P4
Likelihood to Recommend
Open Source
GIT is good to be used for faster and high availability operations during code release cycle. Git provides a complete replica of the repository on the developer's local system which is why every developer will have complete repository available for quick access on his system and they can merge the specific branches that they have worked on back to the centralized repository. The limitations with GIT are seen when checking in large files.
Read full review
Open Source
If you generally think that to develop software you have to choose one repository, then in my opinion you have to choose between Mercurial and Git, there is not other solution. Mercurial also has a good merge tool which i can recommend. This gives you the flexibility to push just the "part of the feature", and is much better suited in the case where the "part of feature" and some other "part of the feature" both contain changes to the same file.
Read full review
Perforce Software
While Perforce Helix is the best version control software out there, it can also be used to track your documentation, training videos and materials, and requirements. If you have strict compliance requirements, it can be used to ensure that those requirements are satisfied. Perforce Helix is incredibly flexible and can meet the needs of individual users as well as companies with thousands of users.
Read full review
Pros
Open Source
  • Ability to create branches off current releases to modify code that can be tested in a separate environment.
  • Each developer had their own local copy of branches so it minimizes mistakes being made.
  • Has a user-friendly UI called Git Gui that users can use if they do not like using the command line.
  • Conflicts are displayed nicely so that developers can resolve with ease.
Read full review
Open Source
  • Branch
  • Distributed architecture
  • Stable
  • Platform independent
Read full review
Perforce Software
  • 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.
Read full review
Cons
Open Source
  • There can be quite a number of commands once you get to the advanced features and functionality of Git. Takes time to master.
  • Doesn't handle static assets (ie: videos, images, etc.) well. Although in the recent years, new functionality has been introduced to address this.
  • Many different GUIs, many people (including myself) opt to just use the command-line.
Read full review
Open Source
  • Integration with visual studio
  • More integrated tools
  • When I install Mercurial I always have to do a hard restart of my computer.
Read full review
Perforce Software
  • 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 full review
Likelihood to Renew
Open Source
Git has met all standards for a source control tool and even exceeded those standards. Git is so integrated with our work that I can't imagine a day without it.
Read full review
Open Source
No answers on this topic
Perforce Software
We are fully committed to our use of Perforce. It works well within our organization and our desire to share our code base with our customers. Their support staff are responsive, inquisitive, and eager to improve their software. I feel like we have a direct line to their design/feature team as they often solicit our feedback.
Read full review
Usability
Open Source
Git is easy to use most of the time. You mostly use a few commands like commiting, fetch/pull, and push which will get you by for most of time.
Read full review
Open Source
No answers on this topic
Perforce Software
With Perforce Helix, you can use it via the command line, via P4V, or any of the other APIs included with the product. It is extremely easy for new users to get up and running. Users of Perforce Helix only have to pull in the files of interest to them. Also, Perforce is very easy to script and integrate into your CI/CD pipeline. Streams allows you to have pinpoint control of your workflow, and P4Search is the absolute best--I wish Perforce (the company) would talk more about this. It is absolutely fabulous!
Read full review
Reliability and Availability
Open Source
No answers on this topic
Open Source
No answers on this topic
Perforce Software
In our large environment, Perforce is rarely "down". We have regular maintenance windows and from time to time Perforce can feel a little slow, but its always available. Tech support has always worked with our engineers and IT department to make sure that any real performance or stability issues are addressed quickly.
Read full review
Support Rating
Open Source
I am not sure what the official Git support channels are like as I have never needed to use any official support. Because Git is so popular among all developers now, it is pretty easy to find the answer to almost any Git question with a quick Google search. I've never had trouble finding what I'm looking for.
Read full review
Open Source
No answers on this topic
Perforce Software
I had two representatives from Perforce contact me after downloading it but never responded when I had questions. I also had a difficult time finding good training material for getting started. There is a lot of available support material when running into issues, though, because of how many large companies use it.
Read full review
Implementation Rating
Open Source
It's easy to set up and get going.
Read full review
Open Source
No answers on this topic
Perforce Software
This rating is related to setting up an environment from an existing Perforce repository. Initial setup of Perforce as the repository for the company was done by a separate team long prior to my inception.
Read full review
Alternatives Considered
Open Source
I've used both Apache Subversion & Git over the years and have maintained my allegiance to Git. Git is not objectively better than Subversion. It's different.
The key difference is that it is decentralized. With Subversion, you have a problem here: The SVN Repository may be in a location you can't reach (behind a VPN, intranet - etc), you cannot commit. If you want to make a copy of your code, you have to literally copy/paste it. With Git, you do not have this problem. Your local copy is a repository, and you can commit to it and get all benefits of source control. When you regain connectivity to the main repository, you can commit against it. Another thing for consideration is that Git tracks content rather than files. Branches are lightweight and merging is easy, and I mean really easy.
It's distributed, basically every repository is a branch. It's much easier to develop concurrently and collaboratively than with Subversion, in my opinion. It also makes offline development possible. It doesn't impose any workflow, as seen on the above linked website, there are many workflows possible with Git. A Subversion-style workflow is easily mimicked.
Read full review
Open Source
When we chose Mercurial it was more popular from perspectives than Git and we have too many problems with the Microsoft team foundation solution. We also want to move from a centralized version of source control to a distributed one. We also were working more and more via the Internet with our source control so distributed version was only solution.
Read full review
Perforce Software
Git is great, I love Git. But it's not great for dealing with binary assets, even when using Git LFS. Locking is not as simple as on perforce. Git presents some problems on using for non-tech people it can get overwhelming and tech people have to come by and help.
Read full review
Return on Investment
Open Source
  • Git has saved our organization countless hours having to manually trace code to a breaking change or manage conflicting changes. It has no equal when it comes to scalability or manageability.
  • Git has allowed our engineering team to build code reviews into its workflow by preventing a developer from approving or merging in their own code; instead, all proposed changes are reviewed by another engineer to assess the impact of the code and whether or not it should be merged in first. This greatly reduces the likelihood of breaking changes getting into production.
  • Git has at times created some confusion among developers about what to do if they accidentally commit a change they decide later they want to roll back. There are multiple ways to address this problem and the best available option may not be obvious in all cases.
Read full review
Open Source
  • Improve time in merging
  • Branching enables us to keep separate version per customer
  • Good tool for programmers is sometimes a reason to stay
Read full review
Perforce Software
  • Decreased our implementation costs by allowing versioning and back out of customizations made in the field.
  • saves developers time through automation of changes between branches - they think less of the plumbing and have more time to write code.
  • Downside is training/managing expectations of new developers who come in assuming they will use Git.
Read full review
ScreenShots