Windows Subversion与TortoiseSVN安装与使用

摘要:
SVN分为服务器和客户端。服务器为Subversion,客户端为TortoiseSVN。例如,要在磁盘E中创建新文件夹,请右键单击TortoiseSVN˃˃CreateRepositoryhere。此外,您可以参考以下网站了解配置SVN单版本库和多版本库时可能出现的权限问题:http://doc.iusesvn.com/show-8-1.html6使用其他SVN命令。

目前,比较流行的版本控制工具有SVN、Git与Mercurial(Hg)。

SVN分为服务端和客户端,服务端是 Subversion, 客户端是TortoiseSVN。

网上分别下载Windows版本的安装文件,按照既定安装步骤安装即可。

1、建立版本库:

运行Subversion服务器需要首先要建立一个版本库(Repository),可以看作服务器上存放数据的数据库。

如在E盘下新建文件夹,然后右键>> TortoiseSVN >> Create Repository here。  版本库创建成功。

此时会看到里面有如下目录结构:

Windows Subversion与TortoiseSVN安装与使用第1张

2、运行SVN服务端Subversion:

cmd进入windows伪dos,通过如下命令启动服务端:svnserve -d -r E:\svn_repository。服务器即可启动成功。如果关闭命令行窗口,服务端即被停止。

3、浏览版本库中的项目:

在桌面任意位置处鼠标右键>> TortoiseSVN >> Repo-browser, 在url中输入svn服务端地址,格式i为svn://svn主机IP,点击OK,即可通过TortoiseSVN浏览Subversion版本库中的项目。

4、设置权限:

通过刚刚操作你会发现,只要用户知道svn服务端的项目,即可直接操作(不仅浏览,还可以删除等)服务端版本库中的项目,实际过程中肯定是有权限限制的。

E:\svn_repository\conf为权限配置相关文件。

打开svnserve.conf,将[general]配置项中的password-db = passwd authz-db = authz前面的注释符去掉,注意,此处需要顶格写表示svnserve需要读取authz和passwd文件。

处于安全的考虑,我们往往要限制对匿名用户的访问权限,所以我们可以将anon-access = read前面的“#”去掉,并将read参数修改为none。

anon-access = none

打开authz,在其中可以添加用户组和用户,首先在[groups]下面添加一个admin用户组,以及为其添加用户。

[groups]
admin = qqyumidi, corn

接下来指定用户组对版本库中相应项目所具有的权限,在此指定对版本库中project具有读写权限。

[/]
@admin = rw
* =

其中,/表示svnserve启动到的根目录,* = 这个语句是指定其他的用户组的权力为空,是为了阻止其他用户组对这个文件有读的权力。 

打开passwd文件,设置上各用户密码。

[users]
qqyumidi = qqyumidi
corn = corn

再次打通过Repo-browser浏览版本库,发现需要进行身份验证,输入帐号密码进入。至此,设置权限操作完成。

5、为本版库中添加项目版本:

此时版本库中的项目版本仍然为空,在F盘新建文件夹project1,并添加上文件readme.txt,右键通过import(import是从当前位置向服务端版本库中导入,export则正好相反),将当前目录内容添加到版本库中。

添加成功后在Repo-browser中即可浏览刚添加进去的内容。

另外,关于SVN单版本库和多版本库配置时可能引起的权限问题,可以参考网址:http://doc.iusesvn.com/show-8-1.html

6、SVN其他命令的使用。

这些可以参考svn手册吧。慢慢用用就熟练了。

版本模型的一些基本思想:http://www.subversion.org.cn/svnbook/1.4/svn.basic.vsn-models.html

免责声明:文章转载自《Windows Subversion与TortoiseSVN安装与使用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇RESTFul APIcscope的用法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

如何删除本地项目文件中的.svn文件

在使用svn时,有时不小心错下载了文件,或者文件出现问题,需要删除 .svn文件,如果文件夹很多,一个一个手动删除,非常麻烦,网上终于找到了一个简单的方法,现分享。 久而久之,SVN文件夹下会有许多.svn的“meta数据”。这些数据久而久之会带来不少麻烦。尤其是基于资源管理器交互的Windows系统。 今天看了Jon Galloway的一个注册表脚本,十...

SVN合并操作实践

大家都知道,SVN是很多公司管理代码的版本控制工具,当分支越来越多,版本迭代越来越频繁的时候,经常会出现代码冲突的头疼事儿,这里讲一下鲨鱼遇到过关于代码版本控制的一些事,最后做个小例子,看图描述。 为什么要用主干,分支的开发方式呢?   我认为使用主干,分支的开发模式,有两个好处。   一是各需求的开发环境独立,不相互影响,对于项目经理规划版本,将版本功能...

Git应用详解第五讲:远程仓库Github与Git图形化界面

前言 前情提要:Git应用详解第四讲:版本回退的三种方式与stash 这一节将会介绍本地仓库与远程仓库的一些简单互动以及几款常用的Git图形化界面,让你更加方便地使用git。 一、Git裸库 简单来说git裸库就是没有工作区的git仓库。比如服务器,只起到代码托管的作用而不需要也不应该修改服务器上的代码。 可通过以下指令创建git裸库: git init...

SVN服务器的搭建和使用

一:SVN服务器搭建和使用。    1.     首先来下载和搭建SVN服务器,下载地址如下: http://subversion.apache.org/packages.html,进入网址后,滚动到浏览器最底部看到如下截图:      个人认为最好用VisualSVN server 服务端和 TortoiseSVN客户端搭配使用. 点开上面的Visual...

Linux SVN 操作详解(转)

1、将文件checkout到本地目录 svn checkoutpath(path是服务器上的目录)例如:svn checkout svn://192.168.1.1/pro/domain简写:svn co 2、往版本库中添加新的文件 svnaddfile例如:svnaddtest.php(添加test.php)svnadd*.php(添加当前目录下所...

node获取代码的svn版本号,并打包的时候,输出指定文件到打包后的项目里面

1、需要安装generate-asset-webpack-plugin插件,npm install generate-asset-webpack-plugin --save-dev 2、配置 webpack.prod.config.js 文件,让其打包的时候输出可配置的文件 3、在我们输入 npm run build 打包之后,在根目录就会生成versio...