Comparison of latest Linux software development version management tools

Source: Internet
Author: User

1. Revise the control system of the RC (RevisionControlSystem ).

Features: 1), simple

2) use the Lock mechanism to prevent multiple developers from simultaneously modifying the same file.

2,Concurrent Version System of CVS (CocurrentVersionSystem)

The most popular open-source version control system based on the RFM

Features:

1), use a single primary code tree, instead of relying on multiple directories as the RCS does.

2), the biggest advantage is that multiple developers can modify a file at the same time. Merging is allowed. That is, concurrent development.

3. SVN (SubVersion)

1) directory version control

CVS can only control the version of a file, but cannot control the version of a directory. CVS can only note that a file is deleted in one location and another file is created in one new location. Because it does not connect to two operations, it is easy to cause loss of the file's historical track.

2) Submit atomicity

CVS uses linear and serial batch submission, that is, to execute the submission in sequence, one by one. Each time a file is successfully submitted, A new version of the file is recorded in the version library. When submitted, the log information provided by the user is repeatedly stored in the version history of each modified file.
The disadvantage of the CVS serial batch submission mode is that when batch operations are interrupted for any reason (typical reasons include network interruptions and client crashes ), the version library is often in an inconsistent state: only a portion of the files that should have been stored in the database are stored in the database. It is very likely that the latest version of the version library cannot be compiled smoothly. More seriously, as other users perform the cvsupdate operation, this inconsistency will spread across the development team quickly, seriously affecting the development efficiency of the team and posing a quality hazard. In addition, if the interruption of batch submission is not found in time, the development team will usually spend more time debugging and troubleshooting software.

4, Git

Git is a version control tool used for Linux kernel development. Unlike common version control tools such as CVS and Subversion, it uses a distributed version library without the support of the server software, making it extremely convenient to publish and exchange source code. Git is fast, which is naturally important for large projects such as Linuxkernel. The most outstanding thing about Git is its mergetracing capability. Git is more suitable for distributed development projects. Svn (the full name is subversion) is more suitable for centralized large-scale development projects. You can also use a level of svn on top of git.
Post: http://hi.baidu.com/zjd168/item/f65e475e516e8e3f33e0a9b0

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.