为什么要学?
SVN是subversion的缩写,是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发同一个项目,实现共享资源,实现最终集中式的管理。
1.存储
SVN服务器既具有CVS所具有数据储存的优点,像是信息资源存储后会形成资源树结构,便于存储的同时,数据一般不会丢失,同时又拥有自己的特色。SVN是通过关系数据库及二进制的存储方式,同时解决了既往不能同时读写同一文件等问题,同时增添了自己特有的“零或一”原则。
2.速度
与人们初始的CVS相比,SVN在速度运行方面有很大提升。因为SVN服务器只支持少量的信息、资源传输,与其他系统相比,更支持的是离线模式,因此避免了网络拥挤现象的出现。
3.安全性
SVN是一种技术性更加安全的产品,实现了系统和控制两方面的结合。一方面可以将系统整体的安全功能有效地分布在分支系统中,进而保证分支系统能正常运行,从而使各分支系统能够互补,最终在系统整体性的安全性得以保障,通过均衡原则实现最终追求安全的目的。
关于下载
直接去官网下载就ok,选择自己喜欢的版本
可视化软件TortoiseSVN
开始学习
SVN简单操作
TortoiseSVN简单操作
浏览仓库
delete
导入与导出
import将本地资源导入到SVN服务器中
export导出项目,和checked不同,它不存在.svn隐藏目录
下载版本
冲突的遇见及解决
遇见情况:同时修改同资源导致资源不同步
张三的版本
李四还在上一版本,现在提交会出现冲突
出现冲突之后会自动先让你更新
最后结果(李四的conflict.java)到里六版本:
更新张三conflict.java
出现冲突小建议:
每次修改文件之前都更新一下,出现冲突的概率就小了
IDEA下使用SVN
关联:
IDEA中项目关联SVN
之后就是下一步下一步.
结果:(如果出现没有东西的话,可以commit一下)
ignore
自己可以选择性用:
.iml;.idea;.gitignore;.sh;.classpath;.project;*.settings;target;
SVN规范
目录规范
主干与分支的合并
1.保证你要被合并的update到最新版本
2.
第一个更为简单就不多讲了,直接下一步就ok
之后在trunk中提交就和branches一样了.