http://www.360doc.com/content/11/0711/19/5131531_132950891.shtml

简介
Svn已经不容质疑的成为了一款流行的代码控制工具,但是你是否还在为配置它服务器侧而苦恼呢? 你是否每次安装服务器时还要去安装apache以及进行配置呢?你是否还在为那命令行的用户创建及权限控制而郁闷呢?

Visualsvn解决了以上你所面对的一切问题,真的它把我们的工作效率提高了n倍.

Visualsvn是完全开源和免费的,当然它的客户端并不免费,不过没关系,客户端有太多的免费版本供我们选择,TortoiseSVN就是一个不错的选择.遗憾的是我这里并不介绍客户端的使用,有兴趣的同学可以到官方网站去学习.
安装
首先到官方网站上获取一个版本http://www.visualsvn.com/server/download/
然后只需要next就ok了;

当然有些地方是可以配置一下的,下面列出一些需要简单设置的界面


当然服务器和管理控制工具都装上


这里可以修改代码库的保存位置,默认为"D:\Repositories\".
也可以修改访问代码库的方式http或https.
最下面是选择用户认证是使用windows用户还是Subversion自己的认证.
安装完后的界面

第一步、创建用户组

开发组,管理组,测试组,等等

第二步、当然是创建用户

第三步、当然是对用户进行分组,编辑用户组


最后是创建代码库:在Repositories上右键-->Create New Repository-->创建第一个代码仓库

当然也可以创建多个代码库,但是我觉得这样不方便,比如在MyEclipse或TortoiseSVN客户端连接SVN服务器时无法列出所有项目,只能列出当前一个项目,不太方便,后面会说到.
这里我使用的是只创建一个代码库repos,在这个代码库下面再创建多个项目的文件夹,对第每个项目文件夹进行权限控制。


这里在代码库repos下创建了三个文件夹,代表三个项目,可以对根目录和子目录进行权限控制,比如Repositories和repos目录所有用户都只有读取权限,但没有写入的权限.

在使用过程中遇到的问题:
1、安装VisualSVN Server过程中出现错误,无法启动VisualSVN服务
安装到最后一步出错,
提示为VisualSVB服务无法启动,查看日志,提示:
“Product: VisualSVN Server 2.1.4 — Error 1920. Service ‘VisualSVN Server’ failed to start. Please check VisualSVN Server log in Event Viewer for more details.”
这个是服务账户启动服务失败,可能是bug,解决方法:
打开系统服务services.msc,发现VisualSVN Server没有启动成功:

把登录身份改为”本地系统账户“后,就可以启动了,也安装成功了。
2、使用TortoiseSVN客户端浏览版本库
提示:版本库永久移动到 https://192.168.1.100/svn;请重新定位

1)在IE浏览器里通过https://192.168.1.100/svn 可以正常浏览所有项目
2)使用TortoiseSVN 浏览 https://192.168.1.100/svn,提示: "版本库永久移动到"https://192.168.1.100/";请重新定位
3)使用TortoiseSVN 浏览 https://192.168.1.100/svn/test 又正常
4)myeclipse中也是无法浏览所有项目,报301 Moved Permanently 的错误 ,只能单个项目浏览、导出和同步。
不知道问题出在哪,网上也找了很多解决办法,都不是
后面也且发现一个问题,就是使用TortoiseSVN可以把任何项目导入SVN根目录中,因为原先没有在代码库下创建文件夹表示每个项目,而是使用TortoiseSVN直接导入项目的(比如把项目machine_es直接导入https://192.168.123.100/svn/repos/machine_es,注意我没有创建machine_es的文件夹,这样也可以导入),所以无法对每个导入的项目进行权限控制,只要对整个仓库的权限的用户都可以把任何项目导入仓库的任何地方,这不是很危险?
后来发现是创建代码库的方式不正确,原先的流程是:
1、创建代码仓库
2、直接创建TortoiseSVN导入项目
正确的方式应该是:
1、创建代码仓库
2、在代码仓库下面以项目名称创建文件夹,当然也可以通过TortoiseSVN在根目录下创建文件夹
3、使用TortoiseSVN导入项目

这样所有问题都没有了,即可以控制每个项目的权限,客户端也可以列出所有项目
3、导入项目的时候,不能把classes目录下的编译类文件导入SVN库中,不然在同步的时候会报错
org.tigris.subversion.javahl.ClientException:Working copy not locked;this is probably a bug,please report
svn:Working copy'D:\workspace\machine_es\WebRoot\WEB-INF\classes\com'is missing or not locked

原来是myeclipse把src文件夹中的.svn文件夹也"编译"到WEB-INF/classes中去了,而复制过来的.svn中存储的是src文件夹中的版本信息,从而导致在更新时出错。
首先在导入SVN库时,要删除classes下的com目录;
其次设置myeclipse:

在myEclipse中的项目右键->Properties->JavaBuildPath菜单,在右侧面板中的"Source"选项卡,在Excluded中加

入"**/.svn/**"。

也就是把.svn文件夹从编译路径中排除,这样就不会出现上面的问题了。

svn服务器快速搭建及简单配置的更多相关文章

  1. Ubuntu SVN服务器的搭建与配置(转)

    Ubuntu SVN服务器的搭建与配置 一.         安装 sudo apt-get install subversion sudo apt-get install libapache2-sv ...

  2. centos7下SVN服务器如何搭建

    Centos7 搭建svn服务器 linux(centos)下SVN服务器如何搭建?说到SVN服务器,想必大家都知道,可以是在LINUX下如何搭建SVN服务器呢?那么今天给大家分享一下linux(ce ...

  3. linux(centos7)下SVN服务器如何搭建

    linux(centos)下SVN服务器如何搭建?说到SVN服务器,想必大家都知道,可以是在LINUX下如何搭建SVN服务器呢?那么今天给大家分享一下linux(centos)搭建SVN服务器的思路! ...

  4. SVN服务器本地搭建与使用

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6623026.html  使用SVN进行代码管理,需要搭建服务端资源库,然后在使用SVN的电脑安装SVN客户端或 ...

  5. svn服务器的搭建备份和还原和svnmanager的使用

    svn服务器的搭建备份和还原和svnmanager的使用 一.svn服务端软件的安装和配置 1.安装svn版本库软件 # yum install -y subversion 2.建立svn版本库数据存 ...

  6. 基于svnserve的SVN服务器(windows下安装与配置)

    基于svnserve的SVN服务器(windows下安装与配置) 基于svnserve的SVN服务器(windows下安装与配置)关键字: svn 安装SVNserve 从http://subvers ...

  7. 【Head First Servlets and JSP】笔记6:什么是响应首部 & 快速搭建一个简单的测试环境

    搭建简单的测试环境 什么是响应首部 最简单的响应首部——Content-Type 设置响应首部 请求重定向与响应首部 在浏览器中查看Response Headers 1.先快速搭建一个简单的测试环境, ...

  8. svn 服务器的搭建以及客户端的使用

    1.svn 服务器的搭建以及客户端的使用,安装见下面的博客 https://blog.csdn.net/zh123456zh789/article/details/80921179 说明:服务器只是用 ...

  9. Linux SVN服务器的搭建配置及分支的创建与合并

    第一步:通过yum命令安装svnserve,命令如下: >yum -y install subversion 若需查看svn安装位置,可以用以下命令: >rpm -ql subversio ...

随机推荐

  1. sqldatareader无法得到output参数的解决

    只需要在所有的sqldatareader结束后,加上一句就可以得到输出参数了. sdr.Close(); Object ObjCount = cmd.Parameters["@Count_P ...

  2. Linux删除文件名中包含“-”的文件

    背景: 练习用shell的一些特殊符号,输出了一个 cat test.txt > -n,结果创建了一个叫做“-n”的文件   问题: 使用rm -f -n删除不了“-n"文件   解决 ...

  3. sqlserver批量导出存储过程、函数、视图

    select text from syscomments s1 join sysobjects s2 on s1.id=s2.id  where xtype = 'V' xtype V   视图 P  ...

  4. android笔记 : Content provider内容提供器

    内容提供器(Content Provider)主要用于在不同的应用程序之间实现数据共享的功能. 内容提供器的用法一般有两种,一种是使用现有的内容提供器来读取和操作相应程序中的数据,另一种是创建自己的内 ...

  5. Xcrysden-2

    XCrySDen -- (X-Window) CRYstalline Structures and DENsities Introduction to use. XCrySDen is a cryst ...

  6. 将tomcat做成服务

    ①修改startup.bat 在第一行前加入如下内容: SETJAVA_HOME=D:\ProgramFiles\tool\Java\jdk1.6 SETCATALINA_HOME=D:\Progra ...

  7. JSP的内置对象application、session、request、page的作用域

    1.application内置对象的类型名称为ServletContext. 2.session内置对象的类型名称为HttpSession. 3.application作用域:对应整个应用上下文. a ...

  8. linq to sql之like

    contains——like '%提交%' StartsWith—— like '条件%' EndWith——like '%条件'

  9. eclipse安装automake

    help->Install new software

  10. WCF数据契约代理和已知类型的使用

    using Bll; using System; using System.CodeDom; using System.Collections.Generic; using System.Collec ...