双击下载的安装程序
如图步骤安装
2.2 svn 客户端(小乌龟) 下载地址:TortoiseSVN双击安装程序
安装步骤如图所示
3、配置说明:服务器端需要提供IP,端口,账号,密码供客户端使用。
3.1 配置ip和端口Server name的值可以设置为:
127.0.0.1(只能本地自己访问)电脑用户名(只能本地自己访问)电脑ip(能够通过ip访问的用户均可)Server Port使用默认值即可
3.2 新建用户 3.3 新建分组 4、SVN的使用 4.1 新建版本库选择Repositories右键,选择Create New Repostiory
使用默认设置,选择下一步
设置仓库的名字
创建仓库
设置用户访问权限
创建成功
4.2 导入项目到svn(import)复制仓库地址
找到自己的项目右键,选择TorstoiseSVN,选择导入
选择上传的位置
项目导入
查看是否导入成
4.3 检索项目(check out)复制远程仓库中项目的地址
在本地任意位置检出
导出项目到本地
检出成功
4.4 提交代码 (commit)选择修改好的文件邮件,选择TortoiseSVN,选择加入
提交项目
查看是否更新成功
4.5 更新代码(update)在项目任意位置邮件,更新
查看更新信息
4.6 版本冲突问题 4.6.1 版本冲突的原因有A、b两位用户同时检索到项目的版本1,然后B先修改了文件并且提交了,然后A提交文件时会发现修改的文件与B的文件有冲突的地方,系统不知道该如何将A提交的文件更新到仓库的项目中。
4.6.2 版本冲突的现象冲突发生时, subversion会在当前工作目录中保存所有的目标文件版本[上次更新版本、当前获取的版本(即别人提交的版本)、自己更新的版本、目标文件]。
假设文件名是 kingtuns.txt
对应的文件名分别是
kingtuns.txt.r101 上次更新版本kingtuns.txt.r102 当前获取的版本kingtuns.txt.mine 自己更新的版本kingtuns.txt 目标文件同时在目标文件中标记来自不同用户的更改。
4.6.3 场景A用户检出版本5的项目
B用户检出版本5的项目
A用户修改hello.txt文件并提交
此时仓库中的版本已经变为6
B用户修改项目并提交
B用户将文件提交至服务器时,提示版本过期:首先应该从版本库更新版本,然后去解决冲突,冲突解决后要执行 svn resolved(解决),然后在签入到版本库。在冲突解决之后,需要使用svn resolved(解决)来告诉subversion冲突解决,这样才能提交更新
4.6.4 解决冲突的三种方法 放弃自己的更新,使用 svn revert(回滚),然后提交。在这种方式下不需要使用svn resolved(解决)放弃自己的更新,使用别人的更新。使用最新获取的版本覆盖目标文件,执行 resolved filename并提交(选择文件一右键一解决)手动解决:冲突发生时,通过和其他用户沟通之后,手动更新目标文件。然后执行 resolved filename来解除冲突,最后提交。 4.6.5 解决冲突在冲突的文件上右键,选择TortoiseSVN,编辑冲突
手动处理冲突文件
提交文件
4.6.6 如何降低冲突解决的复杂度 当文档编辑完成后,尽快提交,频繁的提交/更新可以降低在冲突发生的概率,以及发生时解决冲突的复杂度在提交时,写上明确的 message,方便以后查找用户更新的原因,毕竟随着时间的推移,对当初更新的原因有可能会遗忘养成良好的使用习惯每天早上打开后,首先要从版本库获取最新版本。每天下班前必须将已经编辑过的文档都提交到版本库 5. IDEA中使用SVN 5.1 配置SVN环境进入idea,选择File => New projects Setup => setting for New Project…
配置svn
5.2 检索项目选择VCS,选择Get from Version Control…
Version control选择Subversion,添加仓库中连接的地址
选择刚刚添加的连接,选择CHECK OUT
设置项目根路径
选择项目子路径
选择1.8 format
选择在当前窗口打开
选择ADD
成功后新增svn按钮
5.3 提交代码修改完代码后,点击绿色对钩提交
添加注释信息,然后COMMIT
进度条显示提交进度
5.4 更新代码选择蓝色箭头更新代码
默认即可,选择ok
更新成功
5.5 导入项目选择VCS, 选择Import into Subversion…
配置远程仓库地址
选择刚刚添加的url,选择import
选择自己要上传的项目,点击ok
添加注释,选择ok
上传成功
5.6 版本冲突问题如4.6中相同情况参数冲突
此时点击更新操作
手动处理异常
处理好冲突后选择apply