Mercurial is a distributed version control system that helps you manage your projects.CodeIf you are afraid that you cannot find the correct code because of minor negligence during the development process, you can use version history, find the original code. At the same time, in team collaboration, if you all need to change several identical files at the same time, you can use a version control system to merge the files without overwriting the hard work of others.
The biggest difference between mercurial and traditional version control systems lies in the concept of distributed systems. The so-called distributed refers to the absence of a central database, which is generally controlled by SVN server (SVN) and VSS Administrator (VSS, mercurial does not have such a database. Therefore, you do not even need an administrator or server when using version control. You can directly create a local database and use it directly. Any database can be used as a central database, in mercurial's view, each database is equal. Of course, in actual use, you can manually specify a central library for publishing, but here we emphasize that mercurial does not care about this, and it is the same for it.
First, the biggest advantage of distributed architecture is that it works offline, which not only means that users can enjoy version control without being connected to the Internet, but also means that the normal submission speed is much faster, this brings great flexibility and even changes the way you work, because the previous centralized version control system, each submission will affect others, so that you cannot submit untested versions, when you use a distributed version control system, you can submit your work anytime, anywhere, and securely protect your work results to prevent accidents. You can also clone and branch your work locally anytime, anywhere, local is a complete version control system! It is not until the final version is modified, and then pushed (equivalent to the centralized version control commit) to the real public library.
Secondly, for individual developers, have you ever thought about using a centralized version control system? I just want to create a central database for working by myself, and then I submit my code to it every time? A local copy of the database. Using a distributed version control system is not that troublesome. You can directly use the local database to create a database.
Mercurial is developed using python, so it is very cross-platform. Running on all platforms is very smooth. Unlike subversion, subversion is slow.
Currently, mercurial's largest customers include Google (Code hosting), Mozilla (Firefox browser), and codeplex.com (Microsoft open source project website ). The latest version of tortoisehg is 1.0.4.
: Http://mercurial.selenic.com/downloads/
The use is also very convenient, the following to operate the https://hg01.codeplex.com/mvcextensions to explain
Tortoisehg uses the hgtk command to append different parameters to call the Hg command and display the results in a graphical interface. Tortoisehg's right-click menu on Windows is a plug-in called overlay, which can be easily embedded into components such as explorer to intuitively display the repository. Similar to SVN, we need to pull the code to a local machine, and use the clone command to clone the code. Clone is one of the most common tasks for developers to get code from the Internet.
SoonSource codeLocal
Right-click and you can see that the command is very rich, similar to SVN.
Local commit)
Mercurial also has a commit, but the commit here is different from that in VSS and SVN. Here, the commit is only submitted locally. You can rest assured that the commit will not affect others.
Version sync (push, pull)
How can I submit the changes to the server? Push your version. In fact, this still involves the version management philosophy, because the host library on codeplex is also a common library in mercurial's view, there is nothing special, you just need to forcibly push your own database to it and modify its database. Similarly, if you want to discard the modification, you need to pull the library pull on codeplex back. Of course, the user name and password are required for pushing on codeplex, and success is displayed after completion. When you clone again, you will find that the content has changed.
For more details, see Introduction and brief introduction to the distributed and next-generation version control system mercurial.