SVN与Eclipse集成操作手册
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
第一章综述 (2)
第二章安装 (2)
第三章集成后的日常使用 (5)
3.1 检出工作项目 (5)
3.2 SVN的使用操作 (7)
3.3 svn使用常见问题 (11)
第四章开发遵循原则 (13)
第一章综述
Eclipse开放工程是IBM集成开发工具,其强大完善的功能、开放的架构可以适应各种级别的java开发。SVN是Subversion的缩写,是版本控制系统工具的一种,Subversion管理随时改动的文件和目录,以二进制格式存储所有的文件,使用高效的比较二进制差异算法来计算版本之间的改动,使用类似数据库事物的方式来处理用户提交入库的过程。Eclipse本身不集成有SVN ,需要添加插件才能集成。
第二章安装
Eclipse若要与SVN集成,则需将SVN插件添加到Eclipse下
Step 1:打开Eclipse,点击help->install new software
Step 2:点击Add添加Site ->选择Location更新源对应的site插件存放路径
Step 3:勾选Name ->Subclipse
Step 4:点击Next:Step 5:依旧点击Next:
Step 6:点击Finish完成配置,重启Eclipse,在windows -> perferences中查看Eclipse中是否已包含插件subclipse
注意:若Eclipse已经包SVN插件subclipse,但在windows -> perferences -> Team ->SVN下查询SVN接口不是最新的(根据服务器情况而定),则在Eclipse的安装
路径下找到features、plugins包,将其替换成Subclipse插件下的同名包,然后
重启Eclipse,再次查看是否更新。
第三章集成后的日常使用
3.1 检出工作项目
打开Eclipse,点击编译器右上角的Open Perspective,打开SVN资源库界面,新建资源库(可咨询项目组管理员URL地址):
右键选择“检出为”,检出对应开发分支的项目工程,其中项目名称可自己决定
注意:也可以在本机安装SVN的客户端,结合使用最佳。
3.2 SVN的使用操作更新:
提交:
显示资源历史记录:锁定操作:
注:锁定前要更新一下,否则会出现一下提示:
切换分支:
3.3 SVN使用常见问题
1、svn: Server sent unexpected return value (500 Internal Server Error) in response to OPTIONS request for 'http://195.204.10.14/svn/CRMS'
错误的用户名。检查用户是否输入错误
2、svn: OPTIONS of '/svn/test': authorization failed: Could not authenticate to server: rejected Basic challenge (http://195.204.10.14/svn/CRMS)
错误的口令。请用正确的用户名/口令登录
3、svn: Server sent unexpected return value (403 Forbidden) in response to OPTIONS request for ' http://195.204.10.14/svn/CRMS'
用户无权限。请联系管理员,为用户分配权限
4、svn: OPTIONS of 'http://195.204.10.14/svn/CRMS': 200 OK
(http://195.204.10.14/svn/CRMS')
服务器地址错误。确认输入正确的 SVN 服务地址。可以在浏览器中输入该地址进行确认
5、The version of your subversion (client) is below 1.5.0, upgrade to 1.5.0 or above. SVN below 1.5.0 can not handle mergeinfo properly. It can mess up our automated merge tracking!
是由于客户端的软件版本低于1.5.0造成的。服务器端对客户端软件版本进行了限制,以免对合并跟踪破坏。解决办法是升级本地的Subversion客户端软件到1.5.0或以上版本3.4
6、svn: This client is too old to work with working copy '.'. You need to get
a newer Subversion client, or to downgrade this working copy. See /faq.html#working-copy-format-change for details.
安装了多个版本的SVN客户端(TSVN,Subclipse,...),且各个客户端的版本不一致。高版
本的SVN客户端会自动更新本地工作目录中的 .svn 目录下的文件格式,导致旧版本的SVN客户端不能继续访问该本地工作目录。解决办法:将本机安装的所有的SVN客户端都更新到同一个大版本,以避免本地工作目录的格式不一致
7、svn: Working copy 'trunk/src' locked svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for details)
异常操作导致目录没有解锁。使用命令行 "svn cleanup" 或者类似的“清理”动作删除锁定
8、svn: Commit failed (details follow): svn: File or directory '/trunk/XXX' is out of date; try updating svn: resource out of date; try updating
基于旧版本修改是不允许的,请先更新,再提交。
9、org.apache.subversion.javahl.ClientException: The operation is forbidden by the server
svn: Commit failed (details follow):
svn: Changing file 'D:\Project\crms-test\crms\WebRoot\biz\contract\changeLoanStatus.jsp' is forbidden by the server
URL access forbidden for unknown reason
svn: Access to
'/svn/CRMS/!svn/rvr/2885/trunk/pro_dev/crms/WebRoot/biz/contract/changeLoanStatus.jsp' forbidden 这个操作是禁止的,没有权限。解决办法是:查看对应svn资源库的路径,查看是否有提交权限
10、冲突
分为文件冲突和树冲突两种。常见的为文件冲突,以下为其做详细解释:
产生原因:
第一种:假设A、B两个用户都在版本号为100的时候,更新了test.txt这个文件,A用户在修改完成之后提交test.txt到服务器,这个时候test.txt文件的版本号已经变成101了。但B用户仍在版本号为100的test.txt文件上作修改,修改完成之后提交到服务器时,由于不是在当前最新的101版本上作的修改,所以导致提交失败,产生了冲突;
第二种:两个或更多开发人员对同一个文件test.txt的同一行做了修改,但svn不能取舍最佳合并版本,就会产生冲突。
冲突现象:
冲突发生时,打开问题文件,找到以“<<<<<<<”开头的那几行,有冲突的区域会被下面
这样标示:
<<<<<<< .mine
your changes
=======
code merged from repository
>>>>>>> .r1234
另外,对每一个有冲突的文件,Subversion都会在你的目录中放三个另外的文件:
test.txt.mine