当前位置:网站首页>[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)
边栏推荐
- JVM 垃圾回收 详细学习笔记(二)
- Several methods of calculating the average value of two numbers
- DRF authentication, permissions, and flow restrictions (only for views in DRF)
- OpenGL frame buffer
- Skills that testers must know: Selenium's three waiting ways are interpreted clearly
- 端口复用和重映像
- C语言指针(下篇)
- How to use Arthas to view class variable values
- Three updates to build applications for different types of devices | 2022 i/o key review
- STM32 serial port register library function configuration method
猜你喜欢
Why is access to the external network prohibited for internal services of the company?
H3C VXLAN配置
Reflections on the way of enterprise IT architecture transformation (Alibaba's China Taiwan strategic thought and architecture practice)
Hard core sharing: a common toolkit for hardware engineers
JVM 垃圾回收 详细学习笔记(二)
STM32 serial port register library function configuration method
C language pointer (Part 1)
2022-07-06 Unity核心9——3D动画
C语言指针(下篇)
Synchronized underlying principle, volatile keyword analysis
随机推荐
2022-06-30 unity core 8 - model import
Vagrant failed to mount directory mount: unknown filesystem type 'vboxsf'
Isomorphic C language
MySQL master-slave delay solution
Ppt template and material download website (pure dry goods, recommended Collection)
Idea development environment installation
C language pointer (Part 2)
Cmake command line use
OpenGL三维图形绘制
硬核分享:硬件工程师常用工具包
JWT certification used in DRF
Port occupation troubleshooting
OpenGL frame buffer
Locust performance test 4 (custom load Policy)
Leetcode刷题记录(数组)组合总和、组合总和 II
OpenGL帧缓冲
寄存器地址名映射
外部中断实现按键实验
When inputting an expression in the input box, an error is reported: incorrect string value:'\xf0\x9f... ' for column 'XXX' at row 1
Entity of cesium data visualization (Part 1)