史上最全SVN 教程
以下博文引用《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 教程的更多相关文章
- sentinel (史上最全+入门教程)
文章很长,建议收藏起来,慢慢读! 高并发 发烧友社群:疯狂创客圈 为小伙伴奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : 极致经典 < Java 高并发 三部曲 > 面试必备 + 大厂 ...
- Redis史上最全文章教程
Redis 2020 史上最详细Redis教程 本篇文章并不讲解Redis,只是收集 Redis的优质文章教程 ,文章包含三部分: 理论.编程实战 .面试题. 需要有一定编程功底的人学习 ,如果基础不 ...
- 如何在VPS上搭建WordPress博客网站(史上最全图文教程)
由于现在很多人仍然使用共享主机,所以我决定写这篇教程,教你如何设置自己的虚拟专用服务器(VPS),以便为启动一个 WordPress 网站准备好所有必要的服务. 为什么共享托管不是最好的选择? 你的 ...
- 史上最全: svn与git的对照(二):svn与git的相关概念
如图1是svnserver端数据的文件夹结构 以下是gitserver端的文件夹结构 纵观svn和git服务端的文件夹结构我们非常easy发现 1.有些目录还是蛮像的.甚至是一样的比方说svn中的co ...
- ElasticSearch集成SpringData史上最全查询教程
1.简单介绍 springboot 使用springdata操作es,ElasticsearchRepository使用QueryBuilder构造查询条件 2.集成es //maven集成 < ...
- nacos 实战(史上最全)
文章很长,而且持续更新,建议收藏起来,慢慢读! 高并发 发烧友社群:疯狂创客圈(总入口) 奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : 极致经典 + 社群大片好评 < Java 高并发 三 ...
- Redis分布式锁 (图解-秒懂-史上最全)
文章很长,而且持续更新,建议收藏起来,慢慢读! 高并发 发烧友社群:疯狂创客圈(总入口) 奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : 极致经典 + 社群大片好评 < Java 高并发 三 ...
- Zookeeper 分布式锁 (图解+秒懂+史上最全)
文章很长,而且持续更新,建议收藏起来,慢慢读! 高并发 发烧友社群:疯狂创客圈(总入口) 奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : 极致经典 + 社群大片好评 < Java 高并发 三 ...
- Redis与DB的数据一致性解决方案(史上最全)
文章很长,而且持续更新,建议收藏起来,慢慢读! 高并发 发烧友社群:疯狂创客圈(总入口) 奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : 极致经典 + 社群大片好评 < Java 高并发 三 ...
随机推荐
- BLE 5协议栈-主机控制接口(HCI)
文章参考自:http://www.sunyouqun.com/2017/04/page/3/ .https://www.cnblogs.com/yuqilihualuo/p/9790164.html ...
- elk快速入门-filebeat
filebeatFilebeat是一个日志文件托运工具,在你的服务器上安装客户端后,filebeat会监控日志目录或者指定的日志文件,追踪读取这些文件(追踪文件的变化,不停的读),并且转发这些信息到e ...
- BZOJ 1003 最短路dp
物流公司要把一批货物从码头A运到码头B.由于货物量比较大,需要n天才能运完.货物运输过程中一般要转停好几个码头.物流公司通常会设计一条固定的运输路线,以便对整个运输过程实施严格的管理和跟踪.由于各种因 ...
- 如何在vue项目中引入elementUI组件
个人博客同步文章 https://mr-houzi.com/2018/02/... 前提:已经安装好Vue 初始化vue vue init webpack itemname 运行初始化demo 运行一 ...
- 【转】分布式文件系统FastDFS架构剖析
FastDFS是一款类Google FS的开源分布式文件系统,它用纯C语言实现,支持Linux.FreeBSD.AIX等UNIX系统.它只能通过专有API对文件进行存取访问,不支持POSIX接口方式, ...
- perl 纯变量(Scalar) 转载
转载http://blog.chinaunix.net/uid-20639775-id-154591.html Perl有三种变量: 纯变量(Scalar Varible) 数组(Array) 关联数 ...
- 字节转b kb mb gb 等
/// <summary> /// 计算文件大小函数(保留两位小数),Size为字节大小 /// </summary> /// <param name="siz ...
- The 2018 ACM-ICPC Asia Qingdao Regional Contest, Online(2018 青岛网络预选赛)
A题 A Live Love 原题链接:https://pintia.cn/problem-sets/1036903825309761536/problems/1041155943483625472 ...
- K8S中DaemonSet
DaemonSet DaemonSet 确保全部(或者一些)Node 上运行一个 Pod 的副本.当有 Node 加入集群时,也会为他们新增一个 Pod .当有 Node 从集群移除时,这些 Pod ...
- delphi将一个list中包含的元素,从另一个中删除,如果在另一个中存在的话
Function StrList_Del(StrList,DelStrList:String):String; //将DelStrList中包含的元素,从Strlist中删除,如果在Strlist中存 ...