使用Subversion版本控制工具
第一步:下载Subversion
CollabNetSubversion-server-1.8.5-1-Win32.exe 点击exe文件
1)安装时,会出现两个组件 SVNSERVER Apache ,前者是Subversion的服务器,而Apache是可选的。
2)svn_repository是初始的资源库,可以随意指定一个文件夹 , 最后选择SVN软件安装路径
3)创建资源库(Respository)
C:\Users\Administrator>svnadmin create F:\SVN\svn_repository
其中svnadmin是svn的管理命令,create表示创建资源库,而 F:\SVN\svn_repository 表示资源库所在文件夹路径
4)设置访问用户
在 conf\passwd 文件夹中,最后增加一行代码 wanhao = 123456
即"用户名=密码"方式
5)配置认证和授权文件
svn_repository\conf\svnserver.conf 文件取消 password-db=passwd 这一行前面的 '#'。(注意,这一行前面一定不能留空格!)
6)启动SVN服务
svnserve -d -r F:\SVN\svn_repository
svnserve 是SVN服务管理的命令 -d 表示该服务是由守护线程启动的(也叫后台线程) ,-r F:\SVN\svn_repository 表示启动资源库所在的根目录。
只要不关闭命令行窗口,SVN的服务就一直存在。
第二步使用Subversion 客户端 TortoiseSVN
1)下载 TortoiseSVN-1.8.5.25224-x64-svn-1.8.8.msi
直接双击,安装的位置可以改变,然后全部使用默认的配置。
安装完毕后,需要重启一下电脑。
在任意文件夹下点击右键就可以使用TortoiseSVN菜单了。
2)浏览资源库(先确保启动了服务器端Subversion服务)
在快捷菜单中选择 TortoiseSVN|Repo-browser 将弹出输入资源库地址的对话框。
输入URL svn://localhost/ svn就是访问SVN服务器的协议,localhost为服务器的地址。若是服务器在局域网中,也可以设置局域网的IP地址。若是装了Apache服务器,则可以通过 http:// 访问。
左侧为资源库中所有文件,右侧是文件夹和文件夹的详细信息,可以通过左侧来浏览资源库中各个文件。
3)在资源库中增加文件夹
在跟路径下创建三个文件夹 trunk目录 branches目录 tags目录
trunk目录:程序的主目录,通常源代码的一些文件会保存在这里。
branches目录:保存的是主程序的分支文件,比如同一个软件,可能出现分支开发的情况,可以把分支代码放在这里。
tags目录:保存的是源代码每个版本的备份,比如当软件版本从version1.0到version2.0时,需要有一份代码的备份,以备未来能够随时找回原来的版本。
4)导入文件到资源库(import)
选中一个文件夹,右键TortoiseSVN import , 便会把这个文件导入到项目中了。被导入的文件便成了共享文件,其他用户(你赋予权限的用户)便可以通过客户端获得这些共享文件了。
注意,URL of respository 应该填写具体路径 如 : svn://localhost/trunk/GreatHomeWork
5)从资源库中迁出(check out)
先要建立一个与待迁出文件同名文件夹GreatHomeWork 在此文件夹上右键SVN Checkout
点击OK,完成迁出。
发现迁出的文件夹和文件都使用了带有对勾的绿色图标,表示从SVN中迁出的,并不仅仅是文件的备份。
6)更新(update)-修改-提交(commit)
一个用户把项目导出,更改了部分内容,修改完提交。与此同时,另一位朋友也在修改项目,就会发生冲突。但是这样做效率得到提高,一般都使用这种方式。
先点击导出的项目,右键 SVN Update ,更新资源库。这样可以保证在修改之前使用的是最新的版本。
更新的文件游玉友不同的更新类型,所以会使用不同的颜色标识。
紫色:资源库中新建的文件。
深红色:资源库中的是一个删除或替换的文件。
绿色:资源库中与本地的文件的合并。
红色:资源库中的文件与本地的文件有冲突,需要解决冲突。
黑色:其它的默认文件。
红色表示有冲突的文件,需要自行查找。
新建文件,然后 TortoiseSVN|Add 选项。客户端便会认为这是一个新建的文件,但注意到此时并没有真正添加到资源库中。
删除文件,选中待删除的文件,TortoiseSVN|Delete 命令。
修改文件,修改后的文件,会使用一个红色的圆点标注,这样便可以看到每个文件与资源库文件的状态了。
在未提交之前,用户所有的操作都只是针对本地的操作,而并没有真正地更新到资源库中。
一旦完成修改,用户要尽早提交,这样可以尽量避免冲突。
提交右键SVN Commit... ,然后会弹出一个Check确认对话框,在这个对话框中,选中的为打算提交的,没选中的为不提交的。
7)锁定(lock)-修改-提交-解锁
锁定:选中待锁定的文件夹,右键TortoiseSVN|Get Lock命令。
被锁定的文件,只有被解锁,其他的用户才会继续修改这个文件。
解锁:选中已经锁定的文件 , 右键TortoiseSVN|Release lock 命令。
文件被锁定的过程中,其他的用户不知道文件已被锁定,只有当其他用户提交时才会知道被锁定。所以为了避免其他用户修改一个已经被锁定的文件,用户应当尽量多执行Update操作,这样才能获取到最新资源库中的文件状态。
8)异常处理
有两个人同时修改了文件,第一人先提交,第二人提交便会发生错误。因为提交时已经不是最新版本了,需要提交之前Update一下。
一旦发生冲突,SVN会在冲突的文件中这样标注:
<<<<<<< .mine
#这是我做的修改=======
#这是我为sceond做的修改>>>>>>> .r11
========前的内容是用户自己修改的,后面的为版本库中已经有的。
同时,会在冲突的文件下自动生成三个文件
以下的 “。” 实际指 “.” ,为了使其更明显
1. 冲突的文件名。冲突的文件类型。mine 里面放着第二个人已经修改过的文件。
2. 冲突的文件名。冲突的文件类型。更新备份前的基础版本 这就是两个人修改之前的文件。
3. 冲突的文件名。冲突的文件类型。第一个人更新后存在版本库的文件 也就是第一个人修改完的文件。
比如我第二次修改了log4j.properties commit发生错误。mine表示第二个人修改后的文件 r12表示最开始的文件 r13即代表版本库最新的文件。
解决冲突的办法:
选中第二个人已经修改的文件(版本最新的文件)和我(.mine)的文件, TortoriseSVN | Diff 命令。
此时会弹出 TortoiseMerge 工具,把两个文件不一致的地方显示出来,然后便可以找出冲突的原因。
可以手动修改合并冲突的文件,然后设置为已解决(Resolved),然后便允许提交。
或者将冲突的文件恢复(Revert)到最新版本,然后在最新版本的基础上将解决冲突后的代码放进去,然后提交。但需注意,更新本地文件版本时,本地的修改会丢失,所以要事先备份下文件。
注:更新(Update)与恢复(Revert)都是从资源库中获得最新版本,但他们之间最大不同是恢复不会保存本地的修改,所以要慎用。
some tips:
查看修改日志,在要修改的文件上右键 TortoiseSVN|Show log ,便可以查看修改日志了。
建议每次上传都写上log,对他人,对自己都有好处,也就耽误自己1分钟时间。
可以比较日志,同时选中两个日志记录,Compare revisions
恢复到以前版本,在要恢复的文件上右击,选择Update to revision ,然后便可以选择自己想要恢复的版本号进行恢复。
设置功能,任选一个文件,右键 TortoiseSVN|Settings 命令。
与MyEclipse集成
1.下载 site-1.10.9.zip ,然后解压到 MyEclipse 10\dropins 重启myeclipse即可。
2.切换视图到 SVN Repository Exploring 。
3.将myeclipse中的项目与资源库中的文件同步。
① File ->New ->Other->SVN->Checkout Projects From SVN
②选择之前创建过的资源库,并选择资源库中的项目名,单击Finish
③然后便可以使用Subclipse其他的客户端功能了。比如提交,右键点击项目,选中team,commit等。
使用Subversion版本控制工具相关推荐
- 分布式版本控制工具:git与Mercurial(zz)
分布式版本控制工具:git与Mercurial [收藏此页] [打印] 作者:cyfdecyf 2007-12-26 内容导航: 第1页 [IT168 技术文档] 说到版本控制工具,很多人可能 ...
- 版本控制工具Git 常用操作命令
2019独角兽企业重金招聘Python工程师标准>>> Git 是用于Linux 内核开发的版本控制工具.与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式 ...
- 版本控制工具历史的10个里程碑
导读:作者Eric Raymond在flourish上发表的一篇<Astonishments, ten, in the history of version control>,文中总结了版 ...
- 版本控制工具(CVS、SVN、GIT)简介
2019独角兽企业重金招聘Python工程师标准>>> 版本控制工具: 提供完备的版本管理功能,用于存储.追踪目录(文件夹)和文件的修改历史,是软件开发者的必备工具,是软件公司的基 ...
- 项目管理实践之版本控制工具SVN在Windows平台下的平台搭建
通过<项目管理实践之版本控制工具SVN>我们知道,在windows平台下,如果直接使用Subversion,那么在Windows 系统上,要想让它随系统启动,就要封装SVN Server为 ...
- 项目管理实践之版本控制工具SVN
SVN,即Subversion,是一个自由开源的版本控制系统,可以将数据恢复到早期版本,或者检查数据修改的历史,这些数据可以是源代码,也可以是其他类型的文件. 在SVN出现之前,CVS是开源世界版本控 ...
- 【SVN版本控制工具】
目录 一.SVN是什么? 二.SVN有什么作用? 2.1备份 2.2还原代码 2.3多人协同修改 2.4追溯问题 2.5权限控制 三.下载安装 3.1客户端下载 3.2服务端下载 3.3客户端安装 3 ...
- 【尚硅谷Java笔记+踩坑】Git(分布式版本控制工具)
用于复习快速回顾 目录 1.Git 1.0.提交项目到GitHub简洁版 1.2.版本控制 1.3.版本控制工具 1.4.Git简史 1.5.Git工作机制 1.6.Git和代码托管中心 2.Git安 ...
- 多人开发SVN版本控制工具安装
SVN版本控制工具安装 1. Beyond Compare 这是一个方便进行文件之间差异对比的工具,可以方便的对文件中的内容进行合并,甚至是文件夹中的内容也可以进行差异对比 直接点击安装即可,除了选择 ...
最新文章
- SHT30温湿度传感器驱动设计分析及代码实现
- 飞书上点链接怎么指定跳转浏览器_链接示例表功能还可以这样用??
- 项目管理中的客户需求变更时需求分析和解决方法
- MVC把表格导出到Excel
- hdu 1460 完数
- 熊猫数据集_为数据科学拆箱熊猫
- 网页传世服务器端,传世服务端文件分析
- Nodejs学习笔记02【module】
- 数学建模之倾倒的啤酒杯
- ps 打开失败 提示:暂存盘已满
- [周鸿祎] 与其苟且活着,不如奋起抗争
- 杭电2818——带权并差集
- 达梦数据库安装及连接
- 1213:八皇后问题
- 学习java第6天 模仿XP画板(10%)
- 【网络工程师】<软考中级>局域网与城域网
- 【时间序列聚类】KMedoids聚类+DTW算法
- 周志华西瓜书学习笔记(一)
- 苹果手机变成耳机模式怎么调回来_百元真无线蓝牙耳机,竟比肩airpods?
- nid java_java – jstack输出缺少tid和nid信息
热门文章
- Centos6.5设置静态IP并能进行联网
- 发放米聊网页版邀请码
- 学计算机的人用的壁纸,桌面心理学:你的电脑桌面透露了什么?
- 光盘安装win7系统显示缺少所需的cd dvd驱动器设备驱动程序
- Apriori算法--关联规则挖掘
- 在家陪爸妈玩斗地主的一些感受
- 异构智能吴韧:对标英伟达和 Google ,要做专用的 AI 芯片
- 一个手办能卖到成千上万,但很多人不知道建个游戏角色模型,月薪就3W+
- 设置透明色有残留怎么办_手机内存不够怎么办 如何给手机内存扩展【介绍】...
- 依赖libcurl库实现sftp的下载功能