windows下svn-1.4.0环境布置和eclipse集成

原创 2006年09月27日 11:38:00

step1)下载和安装服务器

下载并安装svn-1.4.0-setup.exe,假设你安装到D:/Subversion

 step2)建立Repository

打开命令窗口,

进入D:/Subversion/bin目录

键入 svnadmin create D:/deploy/projects/search

step3)配置Repository

进入Repository目录,在本文中是D:/deploy/projects/search,你会看到conf目录,进入该目录,你会看到svnserve.conf和passwd两个文件

对两个文件作如下修改

svnserve.conf

 

### This file controls the configuration of the svnserve daemon, if you
### use it to allow access to 
this repository.  (If you only allow
### access through http: and
/or file: URLs, then this file is
### irrelevant.)
### Visit http:
//subversion.tigris.org/ for more information.
[general]
### These options control access to the repository 
for unauthenticated
### and authenticated users.  Valid values are 
"write""read",
### and 
"none".  The sample settings below are the defaults.
anon
-access=read
auth
-access=write
### The password
-db option controls the location of the password
### database file.  Unless you specify a path starting with a 
/,
### the file
's location is relative to the conf directory.
### Uncomment the line below to use the default password file.
password
-db=passwd
### The authz
-db option controls the location of the authorization
### rules 
for path-based access control.  Unless you specify a path
### starting with a 
/, the file's location is relative to the conf
### directory.  If you don't specify an authz-db, no path-based access
### control is done.
### Uncomment the line below to use the 
default authorization file.
#authz
-db=authz
### This option specifies the authentication realm of the repository.
### If two repositories have the same authentication realm, they should
### have the same password database, and vice versa.  The 
default realm
### is repository
's uuid.
realm=Search repository

 

passwd

 

### This file is an example password file for svnserve.
### Its format 
is similar to that of svnserve.conf. As shown in the
### example below it contains one section labelled [users].
### The name and password 
for each user follow, one account per line.

[users]
# harry 
= harryssecret
# sally 
= sallyssecret
user
=password

 

我不再对上面两个文件具体内容作出解释,我相信各位一看就懂,我需要提醒的就是 一开始svnserve.conf中的[general] 和 passwd 中的 [users]  行前有#,一定要去掉,否则会抛错

step4)启动subversion服务器

打开命令窗口键入svnserve -d -r D:/deploy/projects,默认端口是3690,如果不幸这个端口被别的程序暂用,可以通过选项 --listen-port=绑定端口 进行设置

这样服务器就架设好了。当然你可以使用apache和subversion结合使用,本文使用了subversion自带的svn服务器

url格式为svn://ip地址//Repository名,在本文中是svn://127.0.0.1/search

你可以下载客户端TortoiseSVN访问svn服务器,如果你使用eclipse作开发的话,也可以装个subclipse插件充当客户端。当客户端连上服务器之后,然后在建立远程文件夹(作为一个项目目录),然后将远程文件check out到本地之后,你在该目录下所产生的任何文件就都处于svn的控制了,以下你就可以版本控制的操作了.

将 Subclipse 添加到 Eclipse

Subclipse 是一个为 Eclipse IDE 添加 Subversion 支持的项目。我们将使用 Eclipse 的更新管理器将 Subclipse 添加到 Eclipse IDE。在 Eclipse 中的 “Help” 菜单中选择 Software Updates > Find and Install 打开更新管理器。


图 1. Eclipse 更新管理器
Eclipse 更新管理器

除了使用这个更新管理器查找软件更新外,我们还可以使用该更新管理器查找并安装新特性,如 Subclipse。务必选中 Search for new features to install,然后单击 Next 以继续。Eclipse 会显示更新管理器的下一个面板。


图 2. 更新管理器站点
更新管理器站点

由于我们需要的是特定特性,所以取消选中现有站点,然后单击 New Remote Site,显示 New Update Site 对话框(参见图 3)。我们将使用此对话框将 Subclipse 更新站点添加到列表。


图 3. 添加新的更新站点
添加新的更新站点

在 Name 中输入您需要的内容(Subclipse 是最佳选择),并输入以下 URL:http://subclipse.tigris.org/update_1.0.x(当前 Subclipse 更新站点)。单击 OK 将 Subclipse 更新站点添加到更新管理器的列表中。

在更新管理器窗口中,单击 Finish,开始搜索新特性。在本例中,我们需要的新特性是 Subclipse。片刻之后,更新管理器的搜索完成,并显示搜索结果。


图 4. 可以安装的新特性
可以安装的新特性

选中 Subclipse(您可以单击提示三角符号来查看此特性的详细内容),然后单击 Next 查看该特性的许可条款。接受条款,然后单击 Next 检查您选择安装的特性。单击 Finish 下载并安装 Subclipse。

更新管理器下载 Subversion 组件。在安装任何内容之前,Eclipse 都将通知您该特性没有数字签名(图 5)。这是您取消安装的最后一次机会。单击 Install All 继续安装。


图 5. Subclipse 没有数字签名
Subclipse 没有数字签名

安装 Subversion 后,Eclipse 会立即通知您可能需要重新启动 IDE 才能激活新特性(参见图 6)。周全起见,重新启动 Eclipse。


图 6. 安装新特性后重新启动 Eclipse
安装新特性后重新启动

备份 Eclipse 后,才能安装并顺利使用 Subclipse。

如果在 Mac OS X 或 Linux® 上运行 Eclipse,您可能需要安装 JavaHL 库,在 Subclipse FAQ 中的 Troubleshooting 部分对该库进行了描述(请参阅参考资料)。在继续尝试使用 Subclipse 之前,请做好这些准备工作。

打开svn资源库视图

添加svn资源库

 

输入用户名密码,svn资源库就创建成功了.

 基本的 Subversion 操作

至此,我们已成功地安装了 Subclipse,并在 Eclipse 设置中添加了对 Subversion 服务器的支持,通过从存储库下载最新的 Subclipse 源代码,我们对 Subclipse 进行了测试。现在该考虑使用我们自已的代码和 Subversion 存储库来做些事情了。

向您展示如何使用 Subversion 之前,先简单介绍一下我的存储库。它驻留在称为 dogma 的机器上,端口为 8000,我为与我的 developerWorks 文章相关的代码新建了一个 developerworks 存储库。我将项目直接放置在存储库的根目录中。其他存储库的根目录下通常会有 trunk、tags 和 branches 文件夹,分别用于存放开发版本、标签和分支。但我不希望为 developerWorks 文章中代码的标签和分支操作而烦心。

我已经添加了两个项目,即 forkWork 和 threadWork,这两个项目来自我的第一篇 developerWorks 文章。我的 Eclipse 工作区(参见图 11)还包含三个来自 developerWorks 文章的其他项目(getopt_demo、getopt_long_demo 和 readdir_demo)。


图 11. 我的 Eclipse C/C++ 项目
我的 Eclipse C/C++ 项目

现在,我们做好了一切准备,可以开始工作。

将项目添加到存储库

要将新的项目添加到 Subversion 存储库,请右击该项目(可以在任何 Eclipse 的项目视图或 Navigator 视图),并且从菜单中选择 Team > Share Project。Eclipse 会显示 Share Project 对话框。


图 12. Share Project 对话框
Share Project 对话框

从 Eclipse 当前支持的存储库列表中选择 SVN,然后单击 Next。接下来的对话框(参见图 13)让您选择现有存储库位置,或者创建一个新位置。


图 13. 选择存储库位置
选择存储库位置

如果您的存储库已列出(如您所见,我已经添加了自已的库),选中它,并单击 Finish。如果您的存储库未列出,请添加它(有关说明,请参阅 快速测试),并继续。Eclipse 将在存储库中创建新目录,其名称与项目相同,并显示项目中的所有文件和文件夹的列表。


图 14. 添加项目的内容
添加项目的内容

在顶部的字段中输入适当的内容来描述此项目,然后单击 Select All 选中该项目的所有文件。单击 OK 以检入项目,并将其当前状态传递给 Subversion 存储库。

Subversion 的命令和输出结果显示在 Console 视图中,通常位于 Eclipse 窗口的底部(如果您查看 Subclipse 究竟对项目执行了什么操作)。

更新项目

版本控制系统的重要特性之一是其他开发人员能够随时继续开发,并在准备好时提交其变更。要下载这些变更,并将其与本地副本集成,您需要更新项目。

右击您要更新的项目,然后从菜单中选择 Team > Update。Eclipse 将从存储库中检索任何变更,并尝试将它们与本地副本合并。

添加文件或目录

如果将文件添加到项目中(参见图 15),它不会自动成为版本控制的一部分 —— 您需要明确将其添加到特定的存储库中。在下面的屏幕快照中,您可以看到,我已经将 ReadMe.txt 文件添加到了 threadWork 项目中。


图 15. 添加新文件
添加新文件

右击新文件,然后选择 Team > Add to Version Control。就是这样!下一次将此项目中的变更提交给存储库时,新文件也会检入。

删除文件或目录

如果将文件添加到了与项目不在相关的存储库中,您可以轻松地删除它。右击文件,然后选择 Delete。不需要使用 Team 菜单,Subclipse 自动将标记要删除的文件,并将它从项目中移除。下一次将变更提交给存储库时,该文件被删除了。

重命名文件或目录

要重命名 Subclipse 控制的文件或目录,请右击它,然后选择 Rename。在输入字段中键入项的新名称,按 Enter 键。文件是在项目中重命名的,重命名操作(通过 Add 操作添加新名称、通过 Delete 操作删除旧名称)排队等待您下一次提交。在图 16 中,您可以看到将 main.c 重命名为 threadWork.c 之后、提交更改之前的 threadWork 项目。注意,Subclipse 为 “新” 文件添加的蓝色小加号表示该文件被安排在下一次提交时添加。


图 16. 重命名文件是原子操作,尽管它包含一个 add 操作和一个 delete 操作
重命名文件是原子操作,尽管它包含一个 add 操作和一个 delete 操作

忽略文件

如果项目生成文件,或者包括您不想检入的 Subversion 存储库文件,则可以通知 Subclipse 忽略它们。右击您要在版本控制中排除的文件或目录,然后选择 Team > Add to svn:ignore 即可显示Add to svn:ignore 对话框。


图 17. 忽略不纳入版本控制的资源
忽略不纳入版本控制的资源

单击 OK 将这个特定的文件添加到项目目录的 svn:ignore 属性中。选择 Wildcard extension 忽略具有当前文件扩展名的所有文件,或选择 Custom pattern 在忽略列表中添加您自己的通配符。下一次提交变更时,对忽略列表的这些更改将添加到存储库中。

提交更改

如果您对项目的变更感到满意,确定了您的代码可以编译,并且已经对变更进行测试,则应将它们提交给 Subversion 存储库。在您的工作站崩溃时,它可以作为一个备份,并允许其他开发人员更新其本地副本以包含您的变更。

在尝试提交变更之前,请确保更新您的项目(参阅 “更新项目”)。右击项目,并从菜单中选择 Team > Commit。Eclipse 会显示一个 Commit 对话框(参见图 18),其中汇总了您作出的变更。


图 18. 将变更提交给存储库
将变更提交给存储库

如果仔细观察,您会看到一个属性更改为项目目录(我已经添加了 svn:ignore 属性,以使某些文件保留在存储库外),并且在添加 threadWork.c 时,删除了 main.c。这一变更对实际上表示的是一个操作(文件重命名)。

此时,如果您要使某些资源保留在存储库外,则可以取消对这些资源选择。如果您在一个文件中完成了部分工作,并且不希望检入未完成的变更,则这种方法非常有用。在顶部的文本字段中输入适当的注释,然后单击 OK 将变更检入存储库。


 

相关文章推荐

责任链模式的7种不同实现

引言责任链模式是经典的GoF 23种设计模式之一,也许你已经了解这种模式。不管你是否熟悉,建议读者在阅读本文之前,不妨先思考下面三个问题: 1. 如何用多种风格迥异的编程范式来实现责任链模式? ...

Mybatis步步进阶(三)——1:N关系配置 && 动态SQL拼接

在hibernate学习中,实体映射关系配置一直都让人比较头疼;一对多、多对一、创建主外键,多的一端负责维护管理外键关系 。。Balabala。。。另外面向对象进行操作的hql语句,当涉及多表主外键关...

PHP xdebug eclipse subversion SVN phpunit xmapp 企业级团队开发环境搭建 集成单元测试 花样调试 版本控制 张迅雷原创 欢迎转载

经常在博客见到一个争论不休的话题——到底该不该学php?是学java、donet还是php?本文不讨论PHP、JSP、ASP.NET/ASP 孰优孰劣,有那功夫劲,还不如搭建个环境动手试试,毕竟存在即...

64位win7环境eclipse集成svn后出现Failed to load JavaHL Library的解决办法

出现错误“Failed to load JavaHL Library”的绝大多数情况是使用的Linux环境,在Linux环境中使用eclipse集成svn,会出现这个情况。网上很多处理Linux下出现...
  • canba
  • canba
  • 2011年10月27日 09:57
  • 49497

eclipse使用教程系列一:配置环境变量和jdk以及集成tomcat_maven_svn图文详解

我使用的eclipse版本是月神:luna,tomcat:v7.0,jdk:1.6 介绍个小知识eclipse各个版本的代号: Eclipse 1.0         2001年11月7日(Win...

Windows环境下jenkins +svn+android studio自动化构建(持续集成,打包)

之前打包都是RD通过Android studio或者Eclipse /adt手动打包生成apk给QA测试,现在技术总监要求对项目进行持续集成,也就是说通过某种方式定时(比如每天凌晨三点)自动将SVN库...
  • dailog
  • dailog
  • 2016年09月23日 09:40
  • 3781

Windows7 下Eclipse集成Cygwin配置Android NDK环境编译JNI库(1)

准备: 1. JDk1.6以上版本 2. Eclipse   我的版本 indigo 3. Android SDK 4. Android NDK(R8) 5. Cygwin ...

在 Eclipse或CLion 中集成 opengl 环境 (windows+mingw)

opengl 环境需要三个包,其中 opengl 在 windows 已用,需要的包为 glfw 和 glew。 glfw 为 opengl 创建窗口环境。可在此处下载 源码http://www.gl...

windows下集成maven+eclipse开发环境一:安装使用maven私服nexus

1.   Nexus 分为开源版和企业版,开源版基于 GPLv3 许可证。开源版本主要特性有: 1)   较小的内存占用(最少为 28MB ) 2)   基于 ExJS 的友好界面 3)   基...
  • yaerfeng
  • yaerfeng
  • 2012年08月19日 11:04
  • 10006

windows svn服务端搭建及eclipse集成svn

新入职一家公司需要搭建一个代码管理
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:windows下svn-1.4.0环境布置和eclipse集成
举报原因:
原因补充:

(最多只允许输入30个字)