以下博文引用《https://blog.csdn.net/u013067756/article/details/73302758》,再此仅供学习和参考。

Svn是什么?

SVN(全称Subversion)是一个代码的版本控制系统。一个本地的非常好的对代码版本进行管理的代码库,能永远多个人共同开发同一个项目,公用资源。

SVN分为服务端和客户端,对于开发人员来说,一般装客户端就行了,进行代码的下载和提交;服务端是对代码版本进行管理的代码库。

svn的基本工作原理是:在一台服务器上建立一个源代码库,库里可以存放许多不同项目的源程序。有源代码库管理员统一管理这些源程序。每个用户在使用源代码库之前,首先要把源代码库里德项目文件下载到本地,然后开发人员可以在本地修改,左后用svn命令进行提交,游源代码库统一管理修改。

代码管理流程:

SVN有什么好处?

(1)代码管理混乱

(2)解决代码冲突困难

(3)在代码整合期间引发bug

(4)无法对代码的拥有者进行权限控制

(5)项目不同版本的发布困难

对比:现在比较流行的有云端的是:git, 世界通用的GitHub。

1,SVN客户端:(TortoiseSVN)

(1)直接安装图解步骤,http://jingyan.baidu.com/article/358570f6638aa4ce4724fcf7.html

(2)Eclipse中添加插件方法步骤:http://blog.csdn.net/jieshaowang1229/article/details/51594992

2,SVN服务的安装:(Visual Service)

安装教程:http://www.cnblogs.com/jiahuafu/archive/2012/12/22/2828955.html

服务端安装好之后的配置:

(1)设置或添加用户:

(2)创建一个代码库例如:SSM,在后面会给出一个访问的URL路径:

(3)SVN服务端的测试:

在浏览器中输入上面那个URL的路径:https://Alex/svn/SSM

如果出现以下页面说明安装成功:

3,SVN的应用:

(1)SVN客户端的应用:

方式一是直接新建文件checkout;

方式二是在Eclipse/vs2012/myeclipse 中执行。

当需要下载代码是,新建一个文件,右击选择“SVN Checkout”,填入svn的地址就可以了,如下:

(2)SVN服务端的应用:

下面的那个URL就是刚才新建库的URL:https://Alex/svn/SSM/

下一步,选择“使用指定的模块名”,选择刚刚新建文件的“trunk”:

接下来就是提交了,一般的攻城狮都会编辑注释,做了什么工作或改了什么东西。

此时,SVN服务端还是没有代码,还没有完成上传,还要进行上传:

(注意:其中的.settings文件,target文件,.project和classpath都是每一个人有各自的值,提交之后,就会造成冲突,所以可以设置过滤或忽略,最后只剩下src文件和pom.xml文件就行。)

设置之后,在进行最后一步:提交代码。

去查看svn服务端,可以看到trunk中有了“taotao-parent”,里面有了src文件和pom.xml如下:

之后就是按同样的方式进行其他文件的上传提交了。

测试从服务器中down代码:

可以将自己之前的代码删去,测试能不能从自己的svn中down代码下来。Import代码:

Down下代码来,没有“m”标志,也就是没有maven,不是maven项目,这怎么办?

右击项目,将其configurate -à convert to maven project

效果如下:都有“M”了。

但是之前是七个项目,现在才三个,在“taotao-manager”里面的四个项目怎么弄?

选中taotao-managerà右击 “import”-à这次是选择maven--àexist-à只要是有pom.xml, 它自动认为是存在一个项目的,所以:将所有项目convert to maven,且都down下来结果如下:

总结:

如果只是用SVN 客户端,那就好说了,非常的简单,主要是down代码和上传代码。

如果是还管理SVN服务端,就要多多的注意。

总之,先把代码传到SVN中,需要忽略.setting文件,target文件,“.project”和“.classpath”;下载代码之后,需要转换成maven项目;对应聚合工程使用导入存在maven工程导入到Eclipse中。

参考文章:

http://www.cnblogs.com/green-jcx/p/5966620.html

史上最全SVN 教程的更多相关文章

  1. sentinel (史上最全+入门教程)

    文章很长,建议收藏起来,慢慢读! 高并发 发烧友社群:疯狂创客圈 为小伙伴奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : 极致经典 < Java 高并发 三部曲 > 面试必备 + 大厂 ...

  2. Redis史上最全文章教程

    Redis 2020 史上最详细Redis教程 本篇文章并不讲解Redis,只是收集 Redis的优质文章教程 ,文章包含三部分: 理论.编程实战 .面试题. 需要有一定编程功底的人学习 ,如果基础不 ...

  3. 如何在VPS上搭建WordPress博客网站(史上最全图文教程)

    由于现在很多人仍然使用共享主机,所以我决定写这篇教程,教你如何设置自己的虚拟专用服务器(VPS),以便为启动一个 WordPress 网站准备好所有必要的服务. 为什么共享托管不是最好的选择? 你的 ...

  4. 史上最全: svn与git的对照(二):svn与git的相关概念

    如图1是svnserver端数据的文件夹结构 以下是gitserver端的文件夹结构 纵观svn和git服务端的文件夹结构我们非常easy发现 1.有些目录还是蛮像的.甚至是一样的比方说svn中的co ...

  5. ElasticSearch集成SpringData史上最全查询教程

    1.简单介绍 springboot 使用springdata操作es,ElasticsearchRepository使用QueryBuilder构造查询条件 2.集成es //maven集成 < ...

  6. nacos 实战(史上最全)

    文章很长,而且持续更新,建议收藏起来,慢慢读! 高并发 发烧友社群:疯狂创客圈(总入口) 奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : 极致经典 + 社群大片好评 < Java 高并发 三 ...

  7. Redis分布式锁 (图解-秒懂-史上最全)

    文章很长,而且持续更新,建议收藏起来,慢慢读! 高并发 发烧友社群:疯狂创客圈(总入口) 奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : 极致经典 + 社群大片好评 < Java 高并发 三 ...

  8. Zookeeper 分布式锁 (图解+秒懂+史上最全)

    文章很长,而且持续更新,建议收藏起来,慢慢读! 高并发 发烧友社群:疯狂创客圈(总入口) 奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : 极致经典 + 社群大片好评 < Java 高并发 三 ...

  9. Redis与DB的数据一致性解决方案(史上最全)

    文章很长,而且持续更新,建议收藏起来,慢慢读! 高并发 发烧友社群:疯狂创客圈(总入口) 奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : 极致经典 + 社群大片好评 < Java 高并发 三 ...

随机推荐

  1. 启动Activity的单独事件方法2

    1.Button中创建android:onClick="sendmessage" sendmessage方法名 //MAIN_acitivity创建这个同名独立方法 响应Butto ...

  2. 【网络协议】动态主机配置协议DHCP

    动态主机配置协议DHCP 当某组织获得一块地址后,就可以为本组织内的主机或者路由器分配IP地址.这个分配工作可以由系统管理员手动通过网络管理工具来完成.也可以由动态主机配置协议(Dynamic Hos ...

  3. Tomcat 启动卡在 Root WebApplicationContext: initialization completed in

    tomcat 启动一直卡在 Root WebApplicationContext: initialization completed in 重启了很多次,更换jdk版本,tomcat版本都不行. to ...

  4. Ubuntu18.04安装 NVIDIA驱动

    Ubuntu18.04安装 NVIDIA驱动 参考自博客:https://blog.csdn.net/jsjason1/article/details/88086904 我确定这篇文章是否很有必要,我 ...

  5. 牛客小白月赛12 I 华华和月月逛公园 (tarjian 求桥)

    链接:https://ac.nowcoder.com/acm/contest/392/I 来源:牛客网 华华和月月逛公园 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K, ...

  6. Kettle 事务、转换内顺序、excel模版、使用踩坑

    kettle中转换和作业的执行顺序:     1.一个作业内的转换,是顺序执行的.     2.一个转换内的步骤是并行执行的.     3.作业内不支持事务,转换内支持事务. 根据业务需要,通常需要在 ...

  7. MariaDB使用enum和set

    1.enum 单选字符串数据类型,适合存储表单界面中的“单选值”. 设定enum的时候,需要给定“固定的几个选项”:存储的时候就只存储其中的一个值. 设定enum的格式: enum("选项1 ...

  8. Java-IPDeal工具类

    /** * IP处理类 */ import java.sql.*; public class IPDeal { /** * 通过ip地址查询地区名称 * @param strip * @return ...

  9. Python3-Set

    # Set(集合) # 集合(set)是一个无序不重复元素的序列. # 基本功能是进行成员关系测试和删除重复元素. # 可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须 ...

  10. 【原】linux下部署web

    本机安装xshell.新建->主机处输入ip->确定,按提示输入用户名和密码 安装jdk(一般Linux上都已经安装好了) 安装tomcat. (1)在tomcat官网上下载tar.gz版 ...