文章目录
1. SVN简介
SVN(Subversion):集中式版本控制系统,只有一个*数据仓库,如果*数据仓库出现问题,所有使用者无法使用SVN
SVN服务端下载:https://www.visualsvn.com/server/download/,如:
- 服务端软件:VisualSVN-Server-4.3.1-x64.msi
SVN客户端及语言包下载:https://tortoisesvn.net/downloads.html,如:
- 客户端软件:TortoiseSVN-1.14.0.28885-x64-svn-1.14.0.msi
- 语言包:LanguagePack_1.14.0.28885-x64-zh_CN.msi
SVN工作方式:
2. SVN安装
服务端安装:一路下一步
- 若有VisualSVN Server Editions页面,则选择Standard Edition
- 在Initial Server Configuration页面,修改Location、Repositories、Backups的目录,默认的端口号为8443/443
客户端安装:一路下一步
- 在Custom setup页面,勾选上command line client tools为Will be installed on local hard drive,并修改安装路径Location
安装语言包:一路下一步
设置语言:在桌面任意位置右键–>TortoiseSVN–>Settings–>General–>Language中设置语言
3. VisualSVN-Server基本使用
3.1 创建用户
打开服务端VisualSVN Server Manager
- 右键Users–>Create User
- 设置用户名和密码
3.2 创建组
打开服务端VisualSVN Server Manager
- 右键Groups–>Create Group
- 设置组名Group name,然后Add添加用户到该组,OK
3.3 创建仓库
打开服务端VisualSVN Server Manager
- 右键Repositories–>Create New Repository
- 选择Regular FSFS repository
- 设置仓库名称Repository Name
- 选择生成仓库的目录结构Single-project repository
- Create
校验:
- 右键刚创建的仓库–>Copy URL to Clipboard
- 在浏览器访问,需要用户登录
3.4 分配权限
打开服务端VisualSVN Server Manager
- 右键一个仓库–>Properties
- Security下点Add–>选中用户或组,点击OK
- 在Permissions下设置权限
3.5 版本库的备份和还原
备份:
- 进入VisualSVN-Server的仓库目录Repositories
- 拷贝要备份的仓库的文件夹
还原:打开服务端VisualSVN Server Manager
- 右键Repositories–>Import Existing Repository
- 下一步后选择待还原仓库的位置–>下一步
- 设置仓库名称–>Import
4. TortoiseSVN基本使用-
4.1 检出代码
-
先在VisualSVN Server Manager中右键仓库–>Copy URL to Clipboard复制版本库URL
-
在检出到的目录里右键–>SVN检出(K)
-
在版本库URL下黏贴复制的版本库URL
-
在检出至目录(D)下填写检出到的目录
-
确定后填写用户名和密码(可以不保存认证)
4.2 提交代码
添加到客户端本地仓库(若只是修改了已提交的文件,则直接提交到服务端即可):
- 先在检出至的目录里创建待提交的文件
- 右键TortoiseSVN–>增加
- 选择待提交的文件–>确定
提交到SVN服务端:
- 右键SVN提交©
- 信息里填写本次提交的注释信息
- 变更列表里选择待提交的文件
- 确定后填写用户名和密码
4.3 更新代码
在仓库里右键SVN更新(U)
4.4 解决冲突
冲突产生的原因:多个人同时修改一个文件,如A和B同时下载最新的代码,都修改同一个文件,A修改后上传提交,B修改提交就会提交失败。因为B的文件以及过时,必须重新更新。B更新后,仓库文件如下:
- 原来的文件为内容为冲突的代码
- .min为B待提交更新的代码
- .r(n)为客户端最近一次更新到的代码
- .r(n+1)为服务端最新的代码
右键1文件TortoiseSVN–>编辑冲突
- 想使用那个,就在冲突那里右键使用此文本块(I)
- 标记为已解决,关闭后提交代码
4.5 更新到某个版本
- 在本地仓库里右键TortoiseSVN–>更新至版本
- 显示日志,查看版本号
- 版本下选择版本®,填写版本号后确定
5. 在IDEA中使用SVN*
5.1 配置SVN
-
在初始创建项目的界面点击Configure–>Settings
-
Version Control–>Subversion
-
设置客户端软件位置:TortoiseSVN_HOME\bin\svn.exe
-
OK
5.2 浏览仓库
- 导航栏VCS–>Browse VCS Repository–>Browse Subversion Repository
- 点击SVN Repositories下的加号,输入Repository URL,OK后输入用户名和密码
5.3 上传本地项目到SVN
- 导航栏VCS–>Enable Version Control lntegration–>选择版本控制软件(SVN为Subversion)
- 点击设置里的Version Control–>点击加号
- 如果选择Project,则表示整个项目的模块都会被SVN管理
- 如果选择Directory,则只管理被选择的目录
- VCS选择版本控制软件(SVN为Subversion)
- 成功后项目里的文件名变色
- 共享:导航栏VCS–>Subversion–>Share Directory
- 选择共享到的仓库URL
- Define share target定义这个模块共享到仓库的那个位置(可以选第2个:仓库名/模块名)
- 提交对应的项目:右键项目–>Subversion–>Commit Directory
- 选择要提交的内容,并填写本次提交的注释信息
- 点击Commit后填写用户名和密码
5.4 提交代码
- 右键项目–>Subversion–>Commit Directory
- 选择要提交的内容,并填写本次提交的注释信息
- 点击Commit后填写用户名和密码
5.5 检出代码
- 创建一个新的空项目
- 在空项目目录里使用TortoiseSVN检出代码
- 使用IDEA打开新建的空项目,然后导入检出来的模块
- 导航栏VCS–>Enable Version Control lntegration–>选择版本控制软件(SVN为Subversion)
- 点击设置里的Version Control–>点击加号
- 如果选择Project,则表示整个项目的模块都会被SVN管理
- 如果选择Directory,则只管理被选择的目录
- VCS选择版本控制软件(SVN为Subversion)
5.6 更新代码
- 右键项目–>Subversion–>Update Directory
- Update/Switch to specific revision可以选择更新到哪个版本,默认最新版本
- OK
5.7 解决冲突
-
先更新代码,会有Conflicts页面,选择解决冲突的方式
- Accept Yours使用自己的
- Accept Iheirs使用别人的
- Merge手动合并
-
然后再次提交代码