VisualSVN Server 配置和使用
以前使用官方Subversion搭建SVN版本控制环境,很繁琐。在Windows 系统上,要想让它随系统启动,就要封装SVN Server为windws service,还要通过修改配置文件来控制用户权限。另外如果要想以Web方式【http协议】访问,一般还要安装配置Apache。
VisualSVN Serve集成了Subversion和Apache,省去了以上所有的麻烦。安装的时候SVN Server已经封装为windws service,Apache服务器的配置也只是在图像界面上,指定认证方式、访问端口等简单操作;另外,用户权限的管理也是通过图像界面来配置。
1、下载安装文件(服务器端和客户端)
服务器端采用VisualSVN,客户端使用:TortoiseSVN,各下载最新版即可。
服务器端用来存放提交的文件,客户端用来连接服务器端,提交和下载服务器端的文件。
2、安装服务器-客户端
安装过程中有一个界面是选择安装的组件,选择第一个“VisualSVN Server and Management Console”就可以了。
到设置安装界面,可以更改目录,也可以更改端口,注意,端口不要和已经使用的端口冲突
这里的C:/Repositories是服务器文档目录,也就是我们提交到SVN里的文档的存放目录,这个目录大家可以更改
点击下一步,默认安装完成即可。
客户端默认安装就可以了,安装完成可能要重启,重启即可。
3、配置服务器端
运行VisuaSVN Server Manager,选择VisualSVN Server(Local)按右键,选择Properties进入设置界面,在弹出窗口中选择NetWork标签,在ServerName处输入本机的IP地址,我的地址为192.168.3.123,端口我选择8080并保存。VisuaSVN Server访问地址就变更为:http://192.168.3.123:8080/svn/
在Repositories上右键可以创建代码仓库
在User上右键可以创建用户,设置用户名密码
在Groups上右键可以创建组,组内用户拥有相同的权限
用户访问权限控制原则:
继承原则:给一个目录设置权限,则其所有子目录继承此权限,给一个指定目录设置指定权限,则会覆盖从父目录继承的权限,访问权限的替换是基于每个用户而言的。
优先原则:指定目录上配置了多个访问权限时,访问权限最大的规则将会生效
harry是Developers组中的成员,harry将获得Repository目录的read/write权限
4、导入项目到VisualSVN
选中要导入的项目,右键选择Import,弹出下面的窗体,其中http://zt.net.henu.edu.cn 是服务器名,svn是代码仓库的根目录,StartKit是我们在上个教程中添加的一个代码库:
说明:左下角的CheckBox,在第一次签入源代码时没有用,但是,在以后你提交代码的时候是非常有用的。
5.从VisualSVN CheckOut代码到本地
在上图中URL of Repository:下的文本框中输入svn server中的代码库的地址,其他默认,点击OK按钮,就开始签出源代码了。
说明:上图中的Checkout Depth,有4个选项,分别是迁出全部、只签出下一级子目录和文件、只签出文件、只签出空项目,默认的是第一项。上面的例子中,我们也可以使用web的方式访问代码库,在浏览器中输入http://zt.net.henu.edu.cn/svn/StartKit/
这时候也会弹出对话框,要求输入用户名和密码,通过验证后即可浏览代码库中的内容。
源码更新完毕后,进入本地目录即可看到更新下来的文件。
VisualSVN Server 配置和使用的更多相关文章
- VisualSvn Server介绍
1 .VisualSvn Server VisualSvn Server是免费的,而VisualSvn是收费的.VisualSvn是Svn的客户端,和Visual Studio集成在一起,但是不免费 ...
- VisualSvn Server安装和使用
原文地址:http://www.cnblogs.com/jiahuafu/archive/2012/12/22/2828955.html VisualSvn Server介绍 1 .VisualSvn ...
- 系列三VisualSvn Server
原文:系列三VisualSvn Server VisualSvn Server介绍 1 .VisualSvn Server VisualSvn Server是免费的,而VisualSvn是收费的.V ...
- window 安装VisualSvn Server
VisualSvn Server 1 .VisualSvn Server 介绍和下载 VisualSvn Server是免费的,而VisualSvn是收费的.VisualSvn是Svn的客户端,和V ...
- VisualSVN Server的配置和使用方法(转)
1.为什么要用VisualSVN Server,而不用Subversion? 回答: 因为如果直接使用Subversion,那么在Windows 系统上,要想让它随系统启动,就要封装SVN Serve ...
- VisualSVN Server的配置和使用方法 图文
转载 http://www.jb51.net/article/17365.htm VisualSVN Server是免费的,而VisualSVN是收费的.VisualSVN是SVN的客户端,和Visu ...
- VisualSVN Server以及TortoiseSVN客户端的配置和使用方法
http://www.cnblogs.com/beautifulFuture/archive/2014/07/01/3818211.html 近期学习代码管理工具,首先学习一下svn和Tortoise ...
- VisualSVN Server的windows 2003配置和使用方法(图文并茂)
1.为什么要用VisualSVN Server,而不用Subversion? 回答: 因为如果直接使用Subversion,那么在Windows 系统上,要想让它随系统启动,就要封装SVN Serve ...
- VisualSVN Server的配置和使用方法
VisualSVN Server是免费的,而VisualSVN是收费的.VisualSVN是SVN的客户端,和Visual Studio集成在一起, VisualSvn Server是SVN的服务器端 ...
随机推荐
- unity pattern not found
在之前破解成功再次破解或者电脑上多个版本Unity往往会导致破解失败. 破解失败解决方法如下: 先用破解软件破解,虽然是破解失败但是还是可以在破解的目录下找到那个ulf文件. 这时候直接打开unity ...
- PHP 随笔记
SQL插入数据并返回刚插入数据行的主键ID INSERT INTO `peoplespublic`.`demo` (`id`, `name`, `content`, `time`, `file`) V ...
- Codeforces.919E.Congruence Equation(同余 费马小定理)
题目链接 \(Description\) 给定a,b,x,p,求[1,x]中满足n*a^n ≡b (mod p) 的n的个数.\(1<=a,b<p\), \(p<=1e6+3\), ...
- css3 flex布局结合transform生成一个3D骰子
预览地址: https://zhaohh.github.io/flex-dice/index.html 1 Flex 布局 首先聊聊Flex 布局,Flex 布局又称"弹性布局", ...
- Structured Streaming教程(3) —— 与Kafka的集成
Structured Streaming最主要的生产环境应用场景就是配合kafka做实时处理,不过在Strucured Streaming中kafka的版本要求相对搞一些,只支持0.10及以上的版本. ...
- C#用WebBrowser与WIN API辅助模拟获取网站完整Cookie
网上找到的可以完整获取Cookie的方法,转载一下希望能帮助更多人. 亲测可用 在Winform中使用WebBrowser控件获取网站的Cookie有时候是不完整的,默认调用Document.Cook ...
- Introduction to pinatrace annotate version 2: a look into latches again
https://fritshoogland.wordpress.com/2017/12/22/introduction-to-pinatrace-annotate-version-2-a-look-i ...
- Dll注入经典方法完整版
总结一下基本的注入过程,分注入和卸载 注入Dll: 1,OpenProcess获得要注入进程的句柄 2,VirtualAllocEx在远程进程中开辟出一段内存,长度为strlen(dllname)+1 ...
- Android APK 打包过程 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- Grails 第一课
package helloworld import org.junit.*; import java.util.*; class HelloController { def index() { //d ...