svn uses a branch management system for efficient management; in short, it is used by multiple people to jointly develop the same project, realize shared resources, and ultimately achieve centralized management. svn is an open source version control system that uses a client/server system. Various versions of the project are stored on the server. There are two types of SVN clients, one is Web-based WebSVN, and the other is Client software represented by Tortoise SVN.
The operating environment of this tutorial: Windows 7 system, Subversion version 1.14, Dell G3 computer.
SVN is the abbreviation of subversion. It is an open source version control system. Through the efficient management of branch management system, in short, it is used for multiple people to jointly develop the same project and realize shared resources. Achieve ultimate centralized management.
SVN adopts a client/server system. Various versions of the project are stored on the server. The program developer will first obtain the latest version of the project from the server and copy it to the local machine, and then On this basis, each developer can carry out independent development work on his own client and can submit new code to the server at any time. Of course, you can also obtain the latest code on the server through update operations to maintain consistency with the versions used by other developers. [3]
There are two types of SVN clients, one is Web-based WebSVN, etc., and the other is client software represented by Tortoise SVN. The former requires the support of a web server, and the latter requires users to install the client locally. Both types have free open source software for use. SVN also stores version data in two ways: BDB (a transaction-safe table type) and FSFS (a storage system that does not require a database). Because the BDB method may lock the data when the server is interrupted, the FSFS method is safer.
Features of svn
Unified version number. CVS sequentially arranges version numbers for each file, and the version numbers of each file at a certain time are different. Under Subversion, any submission will add the same new version number to all files, even files not involved in the submission. Therefore, the version number of each file at any time is the same. Files with the same version number constitute one version of the software.
Atomic commit. Whether a single file or multiple files are submitted at a time, they are submitted as a whole. Accidents such as transmission interruptions will not cause database incompleteness or data corruption.
Actions such as renaming, copying, and deleting files are stored in version history.
For binary files, a space-saving storage method is used (a simple understanding is to only store the differences from the previous version).
Directories also have version history. The entire directory tree can be moved or copied easily, and all version records can be retained.
The overhead of branches is very small.
Optimized database access allows some operations to be performed without accessing the database. This reduces a lot of unnecessary network traffic between the database host and the database host.
Supports metadata management. Each directory or file can define properties (Property), which are some hidden key-value pairs. Users can customize the property content, and the properties are within the scope of version control like the file content.
Supports two database formats: FSFS and Berkeley DB.
(Learning video sharing: Basic Programming Video)
The above is the detailed content of What is the efficient management of svn?. For more information, please follow other related articles on the PHP Chinese website!