Introduction to code version management tools

The author is fortunate enough to come into contact with the following commonly used configuration management tools: VSS, SVN, Clearcase. I will make a small summary here, and Ctrl+C the comparative comments of some netizens in the past. It is not necessarily accurate, but I hope that through these summaries, I can correct the Help yourself and beginners. If you want to learn more about these tools, please baidu and google, if you want to learn more, please go to the library to borrow books and practice.

1. Visual Source Safe (referred to as VSS)

VSS is a Microsoft product and is a good entry-level tool for configuration management. Originally called Source Safe, VSS was a product of a small company that won the Best Small Management Tool Award in 1992 and was immediately acquired by Microsoft. But Microsoft only acquired the Windows version of Source Safe. In the United States, two other companies have obtained licenses to continue to develop and sell the Mac version and Unix version of Source Safe, respectively. Any research and development, MS itself does not use vss.

SourceSafe looks a lot like the old-fashioned file manager, and it's really ugly. But it’s okay to be ugly. The advantages of SourceSafe can be summed up in 8 words: “easy to use, easy to learn”. This advantage is inherited from its mother Microsoft and is born. Although SourceSafe is not free, people in China get it at a cost close to zero, and it can be downloaded everywhere on the Internet. Of course, Microsoft doesn't care about this little software either, it belongs to the role of "buy big and get small". If you get Visual Studio legally, you get SourceSafe for free.

The evaluation is as follows:

Ease of use: ★★★★★

Easy to learn and use is the strong point of VSS. VSS adopts the standard Windows operation interface. As long as you are familiar with Microsoft products, you can get started quickly. Installation and configuration of VSS is very simple, and no external training is required for the product (which can save the company a fortune). As long as you refer to Microsoft's complete random documentation, you can quickly use it in actual projects.

Function: ★★★

The configuration management function of VSS is relatively basic, and it provides the version tracking function of files. For the management of build and baseline, the tagging function of VSS can provide support. VSS provides share (share), branch (branch) and merge (merge) functions to support team development. VSS does not provide management functions for the process, such as control of the process of change. VSS does not provide support for offsite team development. In addition VSS can only run on the windows platform, can not run on other operating systems.

Security: ★★★

The security of VSS is not high. For VSS users, you can set unreadable, readable, read/write on the folder, and can fully control the four-level permissions. However, since the VSS folder is completely shared with the user, the user can enter, so the user can delete the VSS folder. This is also a big disadvantage of VSS.

Total cost: ★★★★

VSS does not charge for licenses, as long as VSS is installed, there is no limit to the number of users. So the cost of using VSS is lower.

Technical support: ★★★★★

Since VSS is a Microsoft product, it can get stable technical support.

2. SVN (Subversion) - Alternative and upgraded version of CVS (Concurrent Version System)

Let's talk about CVS first. CVS is a configuration management tool for open source code, and its source code and installation files can be downloaded for free. I remember when I was a graduate student in school, all the codes of the school laboratory were managed by CVS, why? Very simple, two words: Free! It works with Eclipse, basically Java code writing, code management and version management can be done "for free".

SVN (Subversion) is a version management tool that has risen in recent years, and is known as the successor of cvs. At present, the vast majority of open source software use svn as the code version management software. Although in 2006 the usage of SVN was still far less than that of traditional CVS, many open source groups have decided to convert CVS to SVN. Those who have switched to SVN include FreeBSD, Apache Software Foundation, KDE, GNOME, GCC, Python, Samba, Mono, and many others. Many development teams switch to SVN because Trac, SourceForge, CollabNet, CodeBeamer and other project collaboration software and IDEs such as Eclipse and NetBeans provide SVN support and integration. In addition, some collaborative networks for free software development, such as SourceForge.NET, in addition to providing CVS, now also provide project developers using SVN as the source code management system. JavaForge, Google Code and BountySource use SVN as the official source code management system . In 2009, the vast majority of CVS services have switched to SVN. CVS has been out of maintenance.

Ease of use: ★★★★

Subversion supports Linux and Windows, and more is installed under Linux. svn server has 2 modes of operation: standalone server and with apache. Both methods have their pros and cons. The ease of use of SVN, which is currently evaluated by the industry, is improving.

Function: ★★★★

In addition to the functions of VSS, SVN also has:

Its client/server access method allows developers to access the latest code from any Internet access point; its unrestricted version management checkout (checkout: Note 1) mode avoids the usual exclusionary Manual conflicts caused by checkout patterns; its client tools are available on most platforms. Likewise, SVN does not provide automatic management of the change process.

Security: ★★★★

Generally speaking, SVN has a single permission setting and cannot complete complex permission control; however, SVN provides an interface for corresponding function expansion through scripts in the SVN ROOT directory, which can not only complete fine permission control, but also more personalized Function.

Overall cost: ★★★★★

SVN is development source software, no purchase fee is required.

Technical support: ★★★

Also because SVN is to develop source code software, there is no manufacturer to provide technical support for it. If you find a problem, you can usually only rely on yourself to find information on the Internet to solve it.

三、 ClearCase

Rational's ClearCase is recognized by the software industry as the most powerful and expensive configuration management software.

ClearCase is mainly used in the concurrent development, release and maintenance of complex products. Its functions are divided into four categories: version control, workspace management (Workspace Management), construction management (Build Management), and process control (Process Control). ClearCase connects client and server through TCP/IP. In addition, a floating license owned by ClearCase can be shared across UNIX and Windows NT platforms.

The functions of ClearCase are much more powerful than CVS and SourceSafe, but the number of users is far less than that of CVS and SourceSafe. The main reason: ClearCase is expensive, around $5,000 per license without volume discounts. For Chinese users, this is undoubtedly a sky-high price. Users can only use ClearCase properly after a few days of training (which is also expensive). It is basically impossible for users to learn without a teacher if they do not participate in training.

Ease of use: ★★★

The installation and maintenance of ClearCase is far more complicated than that of VSS. To become a qualified ClearCase system administrator, special training is required. ClearCase provides command-line and graphical interface operations, but the graphical interface of ClearCase cannot implement all the functions of the command-line. If the Samba service is installed on the Unix/Linux server, the source code can be accessed directly through the Clearcase client under Windows, which is relatively simple.

Function: ★★★★★

ClearCase provides the functions supported by VSS and SVN, but does not provide the function of change management. Rational also provides the ClearQuest tool to provide the function of change management. Unlike VSS, the database behind ClearCase is a proprietary structure. ClearCase provides support for both windows and unix platforms. ClearCase supports scalability across multiple servers and multiple sites through multi-site replication, and excels at setting up complex development processes.

Security: ★★★★

Compared with SVN, SVN has an independent security management mechanism. ClearCase does not have a dedicated security management mechanism and depends on the operating system.

Overall cost: ★★

To choose ClearCase, in addition to the cost of purchasing the license, there are also essential technical service fees. Without Rational's specialized technical services, it is difficult to exert the power of ClearCase. For example, although ClearCase's crack software is available on the Internet, most of the companies that try to apply it fail. In addition, the support for web access and the support function for change management must be purchased separately.

Technical support: ★★★★★

Rational has been acquired by IBM, so there is a reliable after-sales service guarantee.

4. Summary

Tool comparison list

Features VSS SVN ClearCase

Ease of use★★★★ ★★★ ★★★

Features★★★ ★★★★ ★★★★★

Security★★★ ★★★★ ★★★★

Total Cost★★★★ ★★ ★★★★★

Technical Support★★★★ ★★★ ★★★★★

A summary of the above tools is as follows:

  1. The use of VSS is easy to learn, but the function and security of VSS are weak, and it only supports the windows platform. It is recommended as a tool for getting started with project configuration management;

  2. SVN has strong security and version management functions, and can support remote development. However, SVN is mostly installed and used in the command line mode, which has a high learning curve and does not provide the function of change management. For small teams, SVN can be used for manage.

  3. ClearCase has complete functions, good security, and can support complex management, but the learning curve and learning cost are high, and ClearQuest needs to be integrated to complete the complete configuration management function. If a large company adopts the model of simultaneous development by multiple R&D centers in different places, it is generally recommended to use ClearCase.

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325765764&siteId=291194637