svn简介及使用
2017-09-12 23:28
211 查看
版本管理工具SVN
说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。
它的主要功能有:
(1) 集中管理档案,安全授权机制:档案集中地存放在服务器上,经系统管理员授权给各个用户。用户通过check
in和check out的方式访问服务器上的文件,未经授权的用户则无法访问服务器上的文件。
(2) 软件版本升级管理:每次登入时,在服务器上都会生成新的版本,任何版本都可以随时检出编辑。
(3) 加锁功能:在文件更新时保护文件,避免不同的用户更改同一文件时发生冲突。
(4) 提供不同版本源程序的比较。
• 及时了解团队中其他成员的进度
• 广域网共享
• 协同工作,大大提高团队工作效率
集中式代码管理的核心是服务器,所有开发者在开始新一天的工作之前必须从服务器获取代码,然后开发,最后解决冲突,提交。所有的版本信息都放在服务器上。如果脱离了服务器,开发者基本上可以说是无法工作的。下面举例说明:
开始新一天的工作:
1、从服务器下载项目组最新代码。
2、进入自己的分支,进行工作,每隔一个小时向服务器自己的分支提交一次代码(很多人都有这个习惯。因为有时候自己对代码改来改去,最后又想还原到前一个小时的版本,或者看看前一个小时自己修改了哪些代码,就需要这样做了)。
3、下班时间快到了,把自己的分支合并到服务器主分支上,一天的工作完成,并反映给服务器。
Svn客户端工具:TortoiseSvn(小乌龟)、svn插件
SVN: SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。
GIT:Git
是一个分布式版本控制工具,它的作者 Linus Torvalds,Git
与常用的版本控制工具 CVS、Subversion
等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。
VisualSVN Server是免费的,而VisualSVN是收费的。VisualSVN是SVN的客户端,和Visual
Studio集成在一起, VisualSvn Server是SVN的服务器端,包括Subversion、Apache和用户及权限管理
学习参考链接:http://blog.csdn.net/jiminull/article/details/7763795
http://download.csdn.net/detail/jiminull/4448874
或
http://www.visualsvn.com/server/download/
Server捆绑安装了Apache,免去了你安装apache的麻烦。
同时VisualSVN Server安装步骤中涉及了部分VisualSVN Server配置信息,我会在VisualSVN配置部分详细介绍,VisualSVN
Server安装完毕后,即会跳出VisualSVN配置界面,如下图
版本控制系统的一个免费开源客户端,可以超越时间的管理文件和目录。文件保存在中央版本库,除了能记住文件和目录的每次修改以外,版本库非常像普通的文件服务器。你可以将文件恢复到过去的版本,并且可以通过检查历史知道数据做了哪些修改,谁做的修改。这就是为什么许多人将
Subversion 和版本控制系统看作一种“时间机器”。
主要是管理项目中非代码部分(文档、原型图、其他文件)
http://jingyan.baidu.com/article/358570f6638aa4ce4724fcf7.html
l 可以重启explorer.exe进程代替重启系统过程
1、把工作副本的修改提交到版本库
2、对工作副本进行编辑后提交到SVN
注意:还没有执行Commit操作之前执行此命令才可以,否则无效
这个时候选择更新操作,可以把冲突的文件下载到本地
思考:如何避免冲突?
解决冲突
面对文件冲突,选择以下两种方式解决
用revert放弃所做的修改
使用工具解决冲突
修改完成后,及时commit,不要在本地停留过长时间
在多位团队成员协作时,尽量修改自己撰写的部分,尽量不要修改不属于自己撰写的部分
出现冲突很正常,可以通过前面的方法解决,不要相互覆盖
Checkout:获取版本后.默认是绿色的勾.
这说明和服务器端的数据是一致的.
如果有红色的惊叹号.则说明数据存在着不一致
Commit命令:若确认修改,想把副本提交到版本库中,则使用Commit命令
Update命令:如果你想更新到svn服务器的最新版本.
这个时候可以使用update命令,update有可能会导致版本冲突
2.0 解压site文件,复制两个文件夹,在eclipse的安装目录下,创建myplugins/svn文件夹
在dropfin
文件夹下创建 svn.link 文件
path=xxx//myplugins//svn
从中解压出features与plugins文件夹,复制到dropins中相应目录即可。详细请查看安装文档
Eclipse安装svn插件的4种方式:
http://blog.csdn.net/zhujiaxing666666/article/details/15029011
2、选择项目关联资源库
3、选择项目提交的资源库位置
4、输入版本的操作日志
5、提交项目
2、选择版本库(资源库)
资源库位置,精确到项目http://172.18.5.122:9999/svn/jiyun/ssm_easyui
4、项目检出
5、选择项目类型
6、填写项目名称
7、点击finish,从资源库check项目到工作空间
8、项目检出成功
提交:右键—team—-提交—
日志:右键—team—查看资源历史记录
2、右键team--compare with -–资源库中版本最新的资源内容
3、编辑冲突文件,然后右键—team—合并文件—然后提交文件即可
4、右键—team—提交即可
1 Svn简介 git
1.1 什么是svn
Subversion,是一个开放源代码的版本控制系统,是cvs的重写版和改进版,本质是一款版本管理工具,运行环境独立服务器、基于Apache,多数开源软件使用svn作为代码库。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。
1.2 什么是版本管理工具
版本管理是软件配置管理的基础,它管理并保护开发者的软件资源。它的主要功能有:
(1) 集中管理档案,安全授权机制:档案集中地存放在服务器上,经系统管理员授权给各个用户。用户通过check
in和check out的方式访问服务器上的文件,未经授权的用户则无法访问服务器上的文件。
(2) 软件版本升级管理:每次登入时,在服务器上都会生成新的版本,任何版本都可以随时检出编辑。
(3) 加锁功能:在文件更新时保护文件,避免不同的用户更改同一文件时发生冲突。
(4) 提供不同版本源程序的比较。
1.1 为什么使用svn
• 轻松比较不同版本间的细微差别• 及时了解团队中其他成员的进度
• 广域网共享
• 协同工作,大大提高团队工作效率
1.2 Svn能做什么
1.2.1 配置库
储存所有的数据,配置库按照文件树形式储存数据-包括目录和文件,任意数量的客户端,可以连接到配置库,读写这些文件.并且可以添加读写日志,有权限的用户很方便的看到这些修改1.2.2 工作副本
与位于中央配置库相对应的是每个人的工作空间,它是每个程序员工作的地方,程序员从配置库拿到源代码,放在本地作为工作副本,在工作副本上进行查看、修改、编译、运行、测试等操作,并把新版本的代码从这里提交回配置库中。2 Svn的工作流程
集中式管理的工作流程如下图:集中式代码管理的核心是服务器,所有开发者在开始新一天的工作之前必须从服务器获取代码,然后开发,最后解决冲突,提交。所有的版本信息都放在服务器上。如果脱离了服务器,开发者基本上可以说是无法工作的。下面举例说明:
开始新一天的工作:
1、从服务器下载项目组最新代码。
2、进入自己的分支,进行工作,每隔一个小时向服务器自己的分支提交一次代码(很多人都有这个习惯。因为有时候自己对代码改来改去,最后又想还原到前一个小时的版本,或者看看前一个小时自己修改了哪些代码,就需要这样做了)。
3、下班时间快到了,把自己的分支合并到服务器主分支上,一天的工作完成,并反映给服务器。
1.3 Svn的工具
Svn服务端工具:SubVersion,VirtualSvnSvn客户端工具:TortoiseSvn(小乌龟)、svn插件
1.4 常见的版本管理工具
CVS:Concurrent Version System(简称CVS) ,CVS是开发源代码的配置管理工具,其源代码和安装文件都可以免费下载。SVN: SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。
GIT:Git
是一个分布式版本控制工具,它的作者 Linus Torvalds,Git
与常用的版本控制工具 CVS、Subversion
等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。
2 VirtualSVN
集成了Subversion和Apache,简化了手工配置Subversion的繁琐步骤。VisualSVN Server是免费的,而VisualSVN是收费的。VisualSVN是SVN的客户端,和Visual
Studio集成在一起, VisualSvn Server是SVN的服务器端,包括Subversion、Apache和用户及权限管理
学习参考链接:http://blog.csdn.net/jiminull/article/details/7763795
2.1 VirtualSVN的下载
VisualSVN Server下载:http://download.csdn.net/detail/jiminull/4448874
或
http://www.visualsvn.com/server/download/
2.2 VisualSVN Server安装
下载完VisualSVN Server后,只要双击VisualSVN Server安装文件,按步骤点击下一步安装即可,VisualSVNServer捆绑安装了Apache,免去了你安装apache的麻烦。
同时VisualSVN Server安装步骤中涉及了部分VisualSVN Server配置信息,我会在VisualSVN配置部分详细介绍,VisualSVN
Server安装完毕后,即会跳出VisualSVN配置界面,如下图
3 TortoiseSVN(小乌龟)
3.1 TortoiseSVN介绍
TortoiseSVN 是 Subversion版本控制系统的一个免费开源客户端,可以超越时间的管理文件和目录。文件保存在中央版本库,除了能记住文件和目录的每次修改以外,版本库非常像普通的文件服务器。你可以将文件恢复到过去的版本,并且可以通过检查历史知道数据做了哪些修改,谁做的修改。这就是为什么许多人将
Subversion 和版本控制系统看作一种“时间机器”。
主要是管理项目中非代码部分(文档、原型图、其他文件)
3.2 TortoiseSVN的安装
学习链接http://jingyan.baidu.com/article/358570f6638aa4ce4724fcf7.html
3.3 SVN图标使用说明
3.4 Tortoies使用注意事项
l TortoiseSVN安装之后如果不重启,则图标没办法显示l 可以重启explorer.exe进程代替重启系统过程
3.5 TortoiesSvn操作
3.5.1 导入(import)
作用:将未纳入版本控制器的文件或目录提交到版本库中(仅执行一次)3.5.2 导出(check out)
作用:将版本库中的内容检出到本地工作副本1.1.1 添加(Add)
在菜单中选择“添加Add”命令。不需要受SVN控制的文件请取消打钩1.1.1 更新(uptdate)
作用:将版本库的修改合并到工作副本中1.1.2 提交(commit)
作用:1、把工作副本的修改提交到版本库
2、对工作副本进行编辑后提交到SVN
1.1.3 还原(Revert)
作用:撤销本地所有未提交的修改注意:还没有执行Commit操作之前执行此命令才可以,否则无效
1.1 Tortoise冲突解决
冲突是指团队协同工作时,当多位团队成员同修改同一个文件,而导致文件无法提交情况这个时候选择更新操作,可以把冲突的文件下载到本地
思考:如何避免冲突?
解决冲突
面对文件冲突,选择以下两种方式解决
用revert放弃所做的修改
使用工具解决冲突
用revert放弃所做的修改
l 选择SVN还原(revert)放弃自己所做的修改使用工具解决冲突
2 关于冲突的建议
修改文件之前,先进行一次update操作修改完成后,及时commit,不要在本地停留过长时间
在多位团队成员协作时,尽量修改自己撰写的部分,尽量不要修改不属于自己撰写的部分
出现冲突很正常,可以通过前面的方法解决,不要相互覆盖
Svn基本操作总结
Import:可以把项目提交到SVN版本库中.Checkout:获取版本后.默认是绿色的勾.
这说明和服务器端的数据是一致的.
如果有红色的惊叹号.则说明数据存在着不一致
Commit命令:若确认修改,想把副本提交到版本库中,则使用Commit命令
Update命令:如果你想更新到svn服务器的最新版本.
这个时候可以使用update命令,update有可能会导致版本冲突
2 Eclipse/MyEclipse插件
2.0 解压site文件,复制两个文件夹,在eclipse的安装目录下,创建myplugins/svn文件夹
在dropfin
文件夹下创建 svn.link 文件
path=xxx//myplugins//svn
2.1 Eclipse下SVN的安装
插件下载地址:http://subclipse.tigris.org/从中解压出features与plugins文件夹,复制到dropins中相应目录即可。详细请查看安装文档
Eclipse安装svn插件的4种方式:
http://blog.csdn.net/zhujiaxing666666/article/details/15029011
2.2 Eclipse下使用的图标
1.1 Eclipse中SVN的基本使用
1.1.1 把项目提交到版本库中(import)
1、在项目上右键—team—share project,选择svn2、选择项目关联资源库
3、选择项目提交的资源库位置
4、输入版本的操作日志
5、提交项目
1.1.2 从版本库中下载副本
1、import – svn—从svn检出项目2、选择版本库(资源库)
资源库位置,精确到项目http://172.18.5.122:9999/svn/jiyun/ssm_easyui
4、项目检出
5、选择项目类型
6、填写项目名称
7、点击finish,从资源库check项目到工作空间
8、项目检出成功
1.1.3 更新、提交、日志操作
更新:右键--team--更新—-提交:右键—team—-提交—
日志:右键—team—查看资源历史记录
1.1.4 解决版本冲突问题
1、发现冲突(在update和commit前) 执行该操作2、右键team--compare with -–资源库中版本最新的资源内容
3、编辑冲突文件,然后右键—team—合并文件—然后提交文件即可
4、右键—team—提交即可
Svn—资源库同步
1、右键—team—与资源库同步相关文章推荐
- svn服务端的安装与使用方式简介(一)
- windows下架设subversion服务器 and TortoiseSVN使用简介
- SVN使用简介
- svn服务端的安装与使用方式简介(一)
- SVN简介和使用
- svn简介与使用
- SVN使用简介
- svn使用简介
- svn服务端的安装与使用方式简介(二)
- svn简介 安装 和基本使用方法
- SVN使用简介
- SVN学习总结(1)——SVN简介及入门使用
- SVN使用简介
- SVN使用简介
- 技术 svn 使用简介
- svn及其使用简介
- SVN学习笔记 - SVN的简介和使用
- SVN学习笔记 - SVN的简介和使用
- SVN使用简介
- svn与git区别简介,git分支操作在mac客户端soureTree和使用命令行如何实现