java程序员菜鸟进阶(九)windows下搭建SVN服务器及配置myeclipse SVN客户端

简介:   java程序员菜鸟进阶(九)windows下搭建SVN服务器及配置myeclipse SVN客户端 分类: 学习专区 java Web    1.下载SVN最新版本安装文件,官网下载地址是:http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=8100,选择最新发布的SVN安装文件进行下载。
 

java程序员菜鸟进阶(九)windows下搭建SVN服务器及配置myeclipse SVN客户端

分类: 学习专区 java Web 

 

1.下载SVN最新版本安装文件,官网下载地址是:http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=8100,选择最新发布的SVN安装文件进行下载。最新版本是Setup-Subversion-1.6.5.msi,大小7.4MB安装SVN至我的电脑。最好使用中文路径,而且路径中不要有空格。双击Setup-Subversion-1.6.5.msi->进入SVN安装欢迎界面,点击“Next”->进入版权相关声明界面,点击“Next”->进入安装目录选择界面,作者选择的是F:\Program Files\Subversion,点击“Next”->进入安装确认界面,点击“Install”->安装结束界面,点击“Finish”结束安装。

2.创建SVN存储库。命令行执行以下命令:
svnadmin  create F:\Subversion\repository 这时候svn安装目录下有repository文件夹生成。

这里还可以用另一种方法创建SVN存储库:

比如我把源码库放在F:\Subversion\repository(注意,确保不能删除),然后在此文件夹上右键,选择TortoiseSVN->Create repository here,创建完后,在这个目录下会自动产生一些目录和文件,如下图:

                                                  

3.SVN服务器相关配置。打开F:\tools\svn\repository\conf目录,打开svnserve.conf找到以下两行:
#[general]
#password-db=passwd
去掉每行开头的#,第二行是指定身份验证的文件名,即passwd文件。保存。同样打开同目录下的passwd文件,找到以下几行,添加几个用户:


                                    



4.启动服务器端服务

可以用命令行svnserve.exe -d -r F:\Subversion\repository,回车后没有什么反应,但是不能把命令行窗口关掉,如果关掉服务就终止了。

启动服务后我们可以测试一下,打开一个文件浏览器,右键TortoiseSVN->Repo-browser,当然客户端程序TortoiseSVN要装好。

键入服务器端的Repository地址




 单击OK,如果能看到如下窗口就证明安装配置成功了




这样就可以在客户端用前面配置的三个用户进行访问了,注意在其它机器上访问的时候要把localhost改成本机IP

如果想开机就启动SVN服务的话,可以创建批处理文件,开机运行SVN服务。新建一notepad文件,重命名其名为“svnserver.bat”,保存在F:\tools\svn\svnBat目录下,编辑其内容如下:
@echooff
echoXXX项目SVN服务器已经启动......
svnserve--daemon--root F:\tools\svn\repository
echoXXX项目SVN服务结束!

打开注册表编辑器,找到

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run项,点开类型为“REG_SZ”,名称为(默认)的那个选项,数值数据输入"F:\tools\svn\svnBat\svnserver.bat"。注意一定要带上引号,保存。再次启动计算机时,myprojects项目树SVN服务即启动。

还可以:

先下载一个SVNService.exe,并将其copyC:\Program Files\Subversion\bin\目录下(不拷也可以,但为了方便使用,还是放到这里比较好),然后在命令行窗口并进入到SVNService.exe所在目录,执行如下图


                

然后我们就可以在Windows Service中看到该服务了,将其改成自动启动,这样每次开机就会自动启动svn service了。

      myeclipse安装svn插件

在myeclipse安装svn插件有很多方式,我也试过其他几种方式,但是都没成功,下面这种方式安装成功了。所以就只介绍这种方式了:

1.下载最新的SVN包:
http://subclipse.tigris.org/servlets/ProjectDocumentList?folderID=2240
2、在你的磁盘上任意位置创建文件夹:“myplugins/svn”。名字可以任取,为了方便插件管理,建议名称为“myplugins”
3、将解压的svn里的两个文件夹拷贝到“myplugins/svn”下。
4、复制下列java代码,修改路径并执行:

[java]  view plain copy print ?
  1. package csh.bzu.test;  
  2. import java.io.File;  
  3. import java.util.ArrayList;  
  4. import java.util.List;  
  5. /** 
  6.  * MyEclipse9 插件配置代码生成器 
  7.  * 
  8.  * 
  9.  */  
  10. public class PluginConfigCreator  
  11. {  
  12.     public PluginConfigCreator()  
  13.     {  
  14.     }  
  15.     public void print(String path)  
  16.     {  
  17.         List<String> list = getFileList(path);  
  18.         if (list == null)  
  19.         {  
  20.             return;  
  21.         }  
  22.         int length = list.size();  
  23.         for (int i = 0; i < length; i++)  
  24.         {  
  25.             String result = "";  
  26.             String thePath = getFormatPath(getString(list.get(i)));  
  27.             File file = new File(thePath);  
  28.             if (file.isDirectory())  
  29.             {  
  30.                 String fileName = file.getName();  
  31.                 if (fileName.indexOf("_") < 0)  
  32.                 {  
  33.                     print(thePath);  
  34.                     continue;  
  35.                 }  
  36.                 String[] filenames = fileName.split("_");  
  37.                 String filename1 = filenames[0];  
  38.                 String filename2 = filenames[1];  
  39.                 result = filename1 + "," + filename2 + ",file:/" + path + "/"  
  40.                         + fileName + "//,4,false";  
  41.                 System.out.println(result);  
  42.             } else if (file.isFile())  
  43.             {  
  44.                 String fileName = file.getName();  
  45.                 if (fileName.indexOf("_") < 0)  
  46.                 {  
  47.                     continue;  
  48.                 }  
  49.                 int last = fileName.lastIndexOf("_");// 最后一个下划线的位置  
  50.                 String filename1 = fileName.substring(0, last);  
  51.                 String filename2 = fileName.substring(last + 1, fileName  
  52.                         .length() - 4);  
  53.                 result = filename1 + "," + filename2 + ",file:/" + path + "/"  
  54.                         + fileName + ",4,false";  
  55.                 System.out.println(result);  
  56.             }  
  57.         }  
  58.     }  
  59.     public List<String> getFileList(String path)  
  60.     {  
  61.         path = getFormatPath(path);  
  62.         path = path + "/";  
  63.         File filePath = new File(path);  
  64.         if (!filePath.isDirectory())  
  65.         {  
  66.             return null;  
  67.         }  
  68.         String[] filelist = filePath.list();  
  69.         List<String> filelistFilter = new ArrayList<String>();  
  70.         for (int i = 0; i < filelist.length; i++)  
  71.         {  
  72.             String tempfilename = getFormatPath(path + filelist[i]);  
  73.             filelistFilter.add(tempfilename);  
  74.         }  
  75.         return filelistFilter;  
  76.     }  
  77.     public String getString(Object object)  
  78.     {  
  79.         if (object == null)  
  80.         {  
  81.             return "";  
  82.         }  
  83.         return String.valueOf(object);  
  84.     }  
  85.     public String getFormatPath(String path)  
  86.     {  
  87.         path = path.replaceAll("////""/");  
  88.         path = path.replaceAll("//""/");  
  89.         return path;  
  90.     }  
  91.     public static void main(String[] args)  
  92.     {  
  93.         /*你新建的含有svn压缩文件的目录*/  
  94.             String plugin = "改成含有svn压缩文件的目录";  
  95.         new PluginConfigCreator().print(plugin);  
  96.     }  
  97. }  


这里需要注意的是修改成为刚才 svn 所在路径,建议改为绝对路径。比如 d:/myplugins/svn/ 。。。
5.找到

“$myeclipse_home/configuration /org.eclipse.equinox.simpleconfigurator/”,打开其中的“bundles.inf”文件,为了防止分不清是不 是我们自己后加的东西,在最后面多回几次车,然后粘贴第4步运行后的代码,保存
6、重启myeclipse

二、使用。。

右键点击一个项目


选择Team下的Share Project

选择SVN


因为我已经提交过某个项目,所以他自动记住了url,我的url形式如下:


如果你使用于选择了https协议,可能会 涉及到证书问题。那样的话就要输入用户名和密码来验证

相关文章
|
3月前
|
API 开发工具 C#
神策SDK不支持Windows客户端全埋点,怎么实现用户统计分析?
本文将介绍,ClkLog针对神策不支持全埋点的客户端实现用户访问基础统计分析 1。
神策SDK不支持Windows客户端全埋点,怎么实现用户统计分析?
|
2月前
|
Android开发 数据安全/隐私保护 虚拟化
安卓手机远程连接登录Windows服务器教程
安卓手机远程连接登录Windows服务器教程
170 4
|
2月前
|
NoSQL Linux PHP
如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤
本文介绍了如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤。接着,对比了两种常用的 PHP Redis 客户端扩展:PhpRedis 和 Predis,详细说明了它们的安装方法及优缺点。最后,提供了使用 PhpRedis 和 Predis 在 PHP 中连接 Redis 服务器及进行字符串、列表、集合和哈希等数据类型的基本操作示例。
81 4
|
3月前
|
Apache 数据中心 Windows
将网站迁移到阿里云Windows系统云服务器,访问该站点提示连接被拒绝,如何处理?
将网站迁移到阿里云Windows系统云服务器,访问该站点提示连接被拒绝,如何处理?
|
Ubuntu Linux 数据库
阿里云服务器ECS操作系统:linux系统与windows系统的区别
阿里云服务器ECS操作系统:linux系统与windows系统的区别.首先,我们要清楚的便是每个系统之间的差别,以及在阿里云上的差别
13252 0
|
9天前
|
机器学习/深度学习 人工智能 PyTorch
阿里云GPU云服务器怎么样?产品优势、应用场景介绍与最新活动价格参考
阿里云GPU云服务器怎么样?阿里云GPU结合了GPU计算力与CPU计算力,主要应用于于深度学习、科学计算、图形可视化、视频处理多种应用场景,本文为您详细介绍阿里云GPU云服务器产品优势、应用场景以及最新活动价格。
阿里云GPU云服务器怎么样?产品优势、应用场景介绍与最新活动价格参考
|
8天前
|
存储 运维 安全
阿里云弹性裸金属服务器是什么?产品规格及适用场景介绍
阿里云服务器ECS包括众多产品,其中弹性裸金属服务器(ECS Bare Metal Server)是一种可弹性伸缩的高性能计算服务,计算性能与传统物理机无差别,具有安全物理隔离的特点。分钟级的交付周期将提供给您实时的业务响应能力,助力您的核心业务飞速成长。本文为大家详细介绍弹性裸金属服务器的特点、优势以及与云服务器的对比等内容。
|
16天前
|
人工智能 JSON Linux
利用阿里云GPU加速服务器实现pdf转换为markdown格式
随着AI模型的发展,GPU需求日益增长,尤其是个人学习和研究。直接购置硬件成本高且更新快,建议选择阿里云等提供的GPU加速型服务器。
利用阿里云GPU加速服务器实现pdf转换为markdown格式
|
3天前
|
机器学习/深度学习 弹性计算 缓存
简单聊聊,阿里云2核2G3M带宽云服务器与轻量应用服务器区别及选择参考
2核2G3M带宽云服务器与轻量应用服务器是目前阿里云的活动中,入门级走量型云服务器,轻量云服务器2核2G3M带宽68元一年,经济型e实例云服务器2核2G3M带宽99元1年。同样的配置,对于有的新手用户来说,有必要了解一下他们之间的区别,以及各自的购买和续费相关政策,从而选择更适合自己需求的云服务器。本文为大家简单分析一下我们应该选择哪一款。
|
3天前
|
监控 安全 数据库
阿里云国际站:如何使用阿里云国际站服务器
阿里云国际站服务器是一种强大的云计算服务,可以帮助用户轻松搭建和管理自己的网站、应用程序和数据库。本文将介绍如何使用阿里云国际站服务器,包括注册账户、选择服务器配置、安装操作系统、配置网络和安全设置等方面。
下一篇
开通oss服务