@H_
502_1@序,我的
ubuntu服务器版本是14.04 ,x64(64位)操作系统,服务器在国内。
目录
@H_
502_1@
一、安装SVN服务器
@H_
502_1@1 安装svn
2 创建目录
3 创建版本仓库
4 配置
5 启动SVN服务器
6 验证svn
功能及使用
方法
@H_
502_1@
二、安装eclipse SVN插件
@H_
502_1@基本常识介绍:
准备工作:
第一种安装
方法是eclipse在线安装
第二种安装
方法是下载
插件包到本地,将
插件包复制到Eclipse安装目录
@H_
502_1@
三、SVN使用方法
@H_
502_1@1 将项目
添加到SVN仓库
2 更新项目
3 往项目中
增加新
文件 4
删除文件 5
重命名文件 6 排除不想
上传到SVN的
文件 7 提交变更
文件到SVN
一、安装SVN服务器
1 安装svn
@H_
502_1@
sudo apt-get install subversion(root用户可以去掉sudo)
2 创建目录
@H_
502_1@
cd /srv
@H_
502_1@sudo mkdir svn
@H_
502_1@cd svn
@H_
502_1@sudo mkdir tone_src #svn的版本仓库存放目录
3 创建版本仓库
@H_
502_1@当前位置在/srv/svn/tone_src
@H_
502_1@sudo svnadmin create /srv/svn/tone_src
@H_
502_1@执行之后tone_srv下
文件结构如下:
4 配置
@H_
502_1@我们需要
修改conf目录下的三个
文件,authz,passwd,svnserve.conf
(1)编辑svnserve.conf
@H_
502_1@[general]
#匿名
用户不可读
anon-access = none
#权限
用户可写
auth-access = write
#密码
文件为passwd
password-db = passwd
#权限
文件为authz
authz-db = authz
(2)编辑authz
@H_
502_1@[groups]
admin= tone #admin组的
用户为tone
@H_
502_1@[/] #必须写/,因为这表示从仓库的目录开始设置权限
@admin =rw #admin组有rw(读写权限),所有人有r(读权限)
*=r
@H_
502_1@注释:这里组的名字不一定叫admin,组的名字可以任务,admin组有多个
用户的话,可以这样制定admin=tone,tone1,tone2等。
(3)编辑passwd文件,设定用户密码
@H_
502_1@[users]
# harry = harryssecret
# sally = sallyssecret
tone=www #设定
用户tone的密码是www,是的没错,密码是明文的。
5 启动SVN服务器
@H_
502_1@sudo svnserve -d -r /srv/svn #启动服务器
@H_
502_1@-d 已守护模式启动
@H_
502_1@-r 指定svn版本库根目录,这样是便于客户端不用输入全路径,就可以访问版本库了。
@H_
502_1@例如:svn://ip:port/tone_src
6 验证svn功能及使用方法
@H_
502_1@由于我们只搭建了SVN服务器,所以在外网访问时只能通过SVN协议访问仓库
内容。
@H_
502_1@也就是
svn://ip:port/repository
@H_
502_1@(1)如果你想通过浏览器访问,也就是http/https协议进行访问,那么你需要再安装apache服务器,然后把svn当做apache服务器的模块去运行,那时候就可以利用http://ip:port/repository的
方法去访问了。
@H_
502_1@
(2)利用eclipse svn插件访问,下章节就教你如何安装subclipse(elipse中的svn插件)
@H_
502_1@(3)svn客户端,这个网上有很多客户端,例如tortoisSVN(也就是乌龟svn,哈哈)
@H_
502_1@
二、安装eclipse SVN插件
基本常识介绍:
@H_
502_1@svn服务器端和svn客户端(
插件)版本最好要对应
@H_
502_1@首先查看安装的SVN服务器版本,利用 svn --help命令看版本号
@H_
502_1@我的SVN服务器版本是1.8.8,那么对应客户端应该选择1.10.x版本。
准备工作:
@H_
502_1@安装SVN
插件有多种方式,下面会介绍两种常用
方法,
@H_
502_1@我的eclipse是Luna版,详细见下图:
@H_
502_1@采用的svn
插件是开源的subclipse,目前最高版本是1.12.x。
@H_
502_1@suclipse官网地址是:http://subclipse.tigris.org/servlets/ProjectProcess?pageID=p4wYuA
第一种安装方法是eclipse在线安装
@H_
502_1@由于资源服务器在美国,所以对于没有FQ的
用户很难成功,不管如何也介绍一下操作
方法
1 help菜单-》Install New Software
2 输入插件地址
3 如果网络可以访问,则会弹出下面内容,选择它们
4 之后就是一路Next,如果网速允许就可以安装成功了,我的网络不行,没安装成功。
第二种安装方法是下载插件包到本地,将插件包复制到Eclipse安装目录
1 下载zip安装包
@H_
502_1@下载地址:http://subclipse.tigris.org/files/documents/906/49433/site-1.10.10.zip
2 解压缩site-1.10.10.zip安装包
3 目录内容拷贝
@H_
502_1@将压缩包解压缩到site-1.10.10目录中,然后将此目录整个拷贝到eclipse安装目录的dropins中,然后重启eclipse。
@H_
502_1@
网上有些博客说将插件包features和plugins目录中的文件分别复制到Eclipse安装目录的features和plugins中。也可以安装成功,但我试验了一下没能安装成功,不知道是我操作错了,还是这个方法不适合我当前版本。不管了,有种方法能做到就可以了。
4 查看是否安装成功
@H_
502_1@选择
文件-》import中存在从“SVN检出项目",那么证明安装成功了。
@H_
502_1@
三、SVN使用方法
1 将项目添加到SVN仓库
@H_
502_1@(1)
@H_
502_1@要将新的项目
添加到 Subversion 存储库,请右击该项目(可以在任何 Eclipse 的项目视图或 Navigator 视图),并且从
菜单中选择 Team > Share Project。Eclipse 会
显示 Share Project 对话框。
@H_
502_1@(2)
@H_
502_1@从 Eclipse 当前
支持的存储库列表中选择 SVN,然后单击 Next。接下来的对话框(参见图 13)让您选择现有存储库位置,或者创建一个新位置。
@H_
502_1@(3)
@H_
502_1@如果您的存储库已列出(如您所见,我已经
添加了自已的库),选中它,并单击 Finish。如果您的存储库未列出,请
添加它(有关说明,请参阅
快速测试),并继续。Eclipse 将在存储库中创建新目录,其
名称与项目相同,并
显示项目中的所有
文件和
文件夹的列表。
@H_
502_1@(4)
@H_
502_1@在顶部的字段中输入适当的
内容来描述此项目,然后单击 Select All 选中该项目的所有
文件。单击 OK 以检入项目,并将其当前状态传递给 Subversion 存储库。
@H_
502_1@Subversion 的命令和
输出结果
显示在 Console 视图中,通常位于 Eclipse 窗口的
底部(如果您查看 Subclipse 究竟对项目执行了什么操作)。
2 更新项目
@H_
502_1@版本控制系统的重要特性之一是其他开发人员能够随时继续开发,并在准备好时提交其变更。要下载这些变更,并将其与本地副本集成,您需要更新项目。
@H_
502_1@右击您要更新的项目,然后从
菜单中选择 Team > Update。Eclipse 将从存储库中检索任何变更,并尝试将它们与本地副本合并。
@H_
502_1@如果将
文件添加到项目中(参见图 15),它不会
自动成为版本控制的一部分 —— 您需要明确将其
添加到特定的存储库中。在下面的屏幕快照中,您可以看到,我已经将 ReadMe.txt
文件添加到了 threadWork 项目中。
@H_
502_1@右击新
文件,然后选择 Team > Add to Version Control。就是这样!下一次将此项目中的变更提交给存储库时,新
文件也会检入。
@H_
502_1@如果将
文件添加到了与项目不在相关的存储库中,您可以轻松地
删除它。右击
文件,然后选择 Delete。不需要使用 Team
菜单,Subclipse
自动将
标记要
删除的
文件,并将它从项目中移除。下一次将变更提交给存储库时,该
文件被
删除了。
@H_
502_1@要
重命名 Subclipse 控制的
文件或目录,请右击它,然后选择 Rename。在输入字段中键入项的新
名称,按 Enter 键。
文件是在项目中
重命名的,
重命名操作(通过 Add 操作
添加新
名称、通过 Delete 操作
删除旧
名称)排队等待您下一次提交。在图 16 中,您可以看到将 main.c
重命名为 threadWork.c 之后、提交更改之前的 threadWork 项目。注意,Subclipse 为 “新”
文件添加的蓝色小加号表示该
文件被安排在下一次提交时
添加。
6 排除不想上传到SVN的文件
@H_
502_1@如果项目
生成文件,或者
包括您不想检入的 Subversion 存储库
文件,则可以
通知 Subclipse 忽略它们。右击您要在版本控制中排除的
文件或目录,然后选择 Team > Add to svn:ignore 即可
显示Add to svn:ignore 对话框。
@H_
502_1@单击 OK 将这个特定的
文件添加到项目目录的 svn:ignore
属性中。选择 Wildcard extension 忽略具有当前
文件扩展名的所有
文件,或选择 Custom pattern 在忽略列表中
添加您自己的
通配符。下一次提交变更时,对忽略列表的这些更改将
添加到存储库中。
7 提交变更文件到SVN
@H_
502_1@在尝试提交变更之前,请确保更新您的项目(参阅 “更新项目”)。右击项目,并从
菜单中选择 Team > Commit。Eclipse 会
显示一个 Commit 对话框(参见图 18),其中汇总了您作出的变更。
@H_
502_1@如果仔细观察,您会看到一个
属性更改为项目目录(我已经
添加了svn:ignore
属性,以使某些
文件保留在存储库外),并且在
添加 threadWork.c 时,
删除了 main.c。这一变更对实际上表示的是一个操作(
文件重命名)。
@H_
502_1@此时,如果您要使某些资源保留在存储库外,则可以取消对这些资源选择。如果您在一个
文件中完成了部分工作,并且不希望检入未完成的变更,则这种
方法非常有用。在顶部的文本字段中输入适当的注释,然后单击 OK 将变更检入存储库。
@H_
502_1@
好了,SVN的服务器搭建,客户端安装及使用方法都介绍完了,有问题可以留言给我。