2 svn操作

来源:互联网 发布:火车票中转查询软件 编辑:程序博客网 时间:2024/05/22 03:03

一 不论使用哪种方式:客户端(提交、获取代码)+服务端(代码仓库)。

实际使用:eclipse继承subclipse插件(用于代码提交和获取)+subversion的server端创建仓库和提供服务

所以:1 版本管理工具subversion的server端启动了服务,并创建了仓库  2 subversion客户端输入url(http svn file三种形式)就能对仓库中的文件操作(检出 提交 合并等等)


二 eclipse使用svn

1 项目关联svn:新建一个项目(随便什么项目),右键项目Team-share project-SVN 新建或者选择资源库位置(就是一个URL)svn://localhost:3690表示本地资源库,一般使用这样的资源库位置:svn://localhost:3690/project/项目名如果安装了小乌龟可以看到资源库上有那些项目(文件)


二 svn操作

1 标准的svn资源库目录结构,只要是一个项目不论是哪个版本都可以切换:(其实三个文件夹branches tags trunk都是项目,只是用途不一样)

(1)trunk:正在开发的最新版本

(2)tags:发布一个版本就标记一个,相当于milestone,一般命名也是xg1.0

(3)branches:当有重大bug时或者要试验新的技术时,trunk继续往前开发,到分支上解决bug后再合并

(右键项目或者在trunk的项目右键:分支/标记  合并)

(4)把branches(分支)合并到trunk:右键trunk的项目合并,合并之前做一个检查的复选框不要勾上,再写分支的资源位置,一直默认到底,有冲突之后再解决。有冲突:在本地解决后标记为冲突已解决,然后重新合并


2 commit(提交) revert(还原) 等等省略

3 冲突的解决:

(1)冲突的原因是:多个人对同一文件修改,只有第一个提交的人是正常的,后来
提交的就会产生冲突!(有点像java中的线程同步一样)
(2)SVN的理解是:在提交的时候,本地修改之前的版本(就是从服务器上下载下
来的版本)与SVN资源库中的版本(已经被别人提交升级了版本)不一致就会产生冲突。
(3)解决方法:
1 分工合作,每个人开发不同的模块
2 先与资源库同步再去写
3 如果非得冲突: 冲突会标记本地、服务器和其他之间的冲突

(1)先revert(还原)再update 最后再去工作
(2)直接update ,然后在本地解决冲突(交流之后解决)保留交流后的结果,再标记为已解决,最后再commit(这种方法会产生三个文件:本地  修改之前的版本  (现在)服务器上的版本

三 关于svn和git 如果没有使用到项目中是体会不到区别的,所以不要去纠结使用
哪一个!要用的时候自然会明白!


0 0
原创粉丝点击