当前位置:网站首页>[SVN] what is SVN? How do you use it?
[SVN] what is SVN? How do you use it?
2022-07-07 09:14:00 【Songdanmin】
List of articles
SVN What is it? ?
SVN Is an open source version control system .
SVN subversion
Store data that changes over time .
The data is placed in the central resource management repository (Repoitory) in — Similar to a file server , Will remember every file change .
Code version management tools
It can remember every modification
View all the modification records
Restore and delete files
Simple concept
- repository Source code library
- Checkout extract
- Commit Submit
- Update to update
Development process :Update( Get the latest code ) --> Make your own modification and debug successfully --> Commit( You can see your changes ) .
When two programmers modify the same file / On the same line ?
SVN Managing source code is done in units of behavior , That is to say, as long as two programmers don't modify the same line of programs ,SVN Both changes are automatically merged . If it's the same line ,SVN Will prompt the file Conflict, Conflict , Need to confirm manually .
SVN and Git difference :
Easy to use , Quick start
Directory permission control , Enterprise security is a must
subdirectories CheckOut Check out the , Reduce unnecessary file checking out
CVS and SVN difference :
CVS Computer parallel version system (Concurrent Version System): Only single file history can be tracked
SVN Version control tools (Subversion): Track directory changes over time , Both directories and files can be versioned .
SVN Compared with CVS advantage :
Atomic submission
Submit single or multiple files at a time , All submitted as a whole .
If an accident happens halfway / Transmission interruption , It will not cause incomplete database and data corruption .
rename 、 Copy 、 Actions such as deleting files are saved in the version history .
For binaries , A space saving method is used .( Simple understanding , Just save the differences from the previous version )
The catalog also has a version history .
The whole tree can be moved or copied , Easy to operate , And can keep all version records .
The overhead of branching is very small .
Optimized database access , So that some operations can be done without accessing the database .
This reduces a lot of unnecessary network traffic with the database host .
SVN The main function of :
Directory and file version control
Real version history
stay Subversion in , You can add (add)、 Delete (delete)、 Copy (copy) And rename (rename)
Automatic submission
Metadata included in version control
Choose a different network layer
Consistent data processing
Valid branches (branch) And labels (tag)
Hackability
SVN Main application :
- Developers use it for code management
- Used to store some important files , For example, contracts.
- File sharing within the company , And can divide permissions by Directory
SVN Basic operation
Submit and update
Check out the CheckOut
newly added Add
Submit Commit
to update Update
Historical record
Revocation and modification
- Undo local changes
- Undo what has been submitted
- Restore to the specified version
Add ignore
How to ignore files , Some documents do not want to be submitted , You can add ignore
Resolve conflicts
Under what circumstances is conflict prone ?
Several people modified the same line of two files
Binaries that cannot be merged
How to avoid conflict ?
Update and synchronize others' code frequently
Binary files should not be operated by more than one person at the same time
What to do if there is a conflict ?
Manually resolve modification conflicts , Or directly use the other party's
Branch
When do I need to open a branch ?
Isolate online and development versions
Large function development , Don't want to affect others , Independent development branch to develop
The staging
What's the use of temporary storage ?
Situation 1 : The code has changed a lot , But there is an urgent need to modify one Bug, But the code is finished , Cannot submit .
Case 2 : A lot of code rewriting , Suddenly need to release a new version , But the code can't run yet , Cannot submit .
In this case, you can temporarily store the code ,
Complex code merging
situation :
Trunk development new functions , Changed a lot
The branch is an online version , A lot of changes bug
The code of the two branches has been different for a long time , Cannot directly branch merge or specify modification record merge
Use BeyondCompare Tools compare and merge
SVN Directory structure :
svn Branch
svn Classic directory structure :
trunk trunk
branches Branch
tags label
Repositories Warehouse : Store quilt svn Managed project files , You can store the source code , Documents, etc. ;
Users user : Create and edit users ;
Groups Permission group : Create and edit user groups ;
SVN Workflow and architecture diagram
SVN Operation mode :

SVN Architecture diagram :

operation SVN Two ways of server :
command-line Command line mode ;
GUI-client Graphical interface mode ;
svn Service connection mode :
(1) internet network connections :
apache The server ;
svn The server ;
(2) local Local connection :
svn Data storage mode :
File mode :FSFS( Recommended )
Database mode :BerkeleyDB( Berkeley DB)
边栏推荐
- Pytest+request+allure+excel interface automatic construction from 0 to 1 [five nails / flying Book notice]
- Screen automatically generates database documents
- Pytest+request+allure+excel interface automatic construction from 0 to 1 [familiar with framework structure]
- Do you have any certificates with high gold content?
- 【istio简介、架构、组件】
- Postman interface test (II. Set global variables \ sets)
- C语言指针(特别篇)
- Implementation of corner badge of Youmeng message push
- Simple use of Xray
- What are the conditions for applying for NPDP?
猜你喜欢
随机推荐
Unity shader beginner's Essentials (I) -- basic lighting notes
Calf problem
Unityshader introduction essentials personal summary -- Basic chapter (I)
STM32的时钟系统
C语言指针(上篇)
C语言指针(中篇)
Locust performance test 4 (custom load Policy)
Systick滴答定时器
PMP certificate preparation experience sharing
[chaosblade: delete pod according to the tag, pod domain name access exception scenario, pod file system i/o failure scenario]
JVM 垃圾回收 详细学习笔记(二)
OpenGL 3D graphics rendering
Digital triangle model acwing 275 Pass a note
Several stages of PMP preparation study
2022-07-06 Unity核心9——3D动画
Unity Shader入门精要初级篇(一)-- 基础光照笔记
When inputting an expression in the input box, an error is reported: incorrect string value:'\xf0\x9f... ' for column 'XXX' at row 1
2022-06-30 unity core 8 - model import
Hard core sharing: a common toolkit for hardware engineers
模拟卷Leetcode【普通】1609. 奇偶树









