SVN高速新手教程

因为做Zip和Rar解析的时候,找到了mucommander工具,可将其jar包导入项目里执行发现报:类型转换错误,org.apache.commons.logging.impl.Log4JLogger  cannot be cast to
org.apache.commons.logging.impl.Jdk14Logger

预计是一个类中写死了类型转换为Jdk14Logger,而我的项目里是採用Log4JLogger,所以导致无法转换过来。所以仅仅得把其源码所有check out下来又一次改动编辑打包。

转自:http://www.subversion.org.cn/?viewnews-1

怎样高速建立Subversionserver,而且在项目中使用起来,这是大家最关心的问题,与CVS相比,Subversion有很多其它的选择,也更加的easy,几个命令就能够建立一套server环境,能够使用起来,这里配套有动画教程
本文是使用Subversion最高速的教程,在最短的时间里帮助您建立起一套可用的server环境,仅仅需略加调整就能够应用到实际项目其中。
本教程分为下面几个部分,为了说明简单,教程是在windows下使用的方式,以方便资源有限的项目使用。在UNIX环境下,仅仅是安装方式不同,命令运行并无太大差别。

  • 软件下载
  • server和client安装
  • 建立版本号库(Repository)
  • 配置用户和权限
  • 执行独立server
  • 初始化导入
  • 基本client操作

1,软件下载

下载Subversionserver程序。

官方站点的下载二进制安装文件,来到二进制包下载部分,找到 Windows NT, 2000, XP and 2003部分,然后选择Apache 2.0 或者 Apache 2.2,这样我们能够看到很多下载的内容,眼下能够下载Setup-Subversion-1.5.3.msi

下载Subversion的WindowsclientTortoiseSVN。

TortoiseSVN是扩展Windows Shell的一套工具,能够看作Windows资源管理器的插件,安装之后Windows就能够识别Subversion的工作文件夹。
官方站点是TortoiseSVN,下载方式和前面的svnserver相似,在Download页面的我们能够选择下载的版本号,眼下的最高稳定版本号的安装文件为TortoiseSVN-1.5.5.14361-win32-svn-1.5.4.msi

2,server和client安装

server安装,直接执行Setup-Subversion-1.5.3.msi ,依据提示安装就可以,这样我们就有了一套server能够执行的环境。

安装TortoiseSVN,相同直接执行TortoiseSVN-1.5.5.14361-win32-svn-1.5.4.msi依照提示安装就可以,只是最后完毕后会提示是否重新启动,事实上重新启动仅仅是使svn工作拷贝在windows中的特殊样式生效,与全部的实际功能无关,这里为了立马看到好的效果,还是又一次启动机器。

3,建立版本号库(Repository)

执行Subversionserver须要首先要建立一个版本号库(Repository),能够看作server上存放数据的数据库,在安装了Subversionserver之后,能够直接执行,如:

(1)、svnadmin create E:/svndemo/repository

就会在文件夹E:/svndemo/repository下创建一个版本号库。

(2)、我们也能够使用TortoiseSVN图形化的完毕这一步:
在文件夹E:/svndemo/repository下"右键->TortoiseSVN->Create Repository here...“, 然后能够选择版本号库模式, 这里使用默认就可以, 然后就创建了一系列文件夹和文件。

注意:在做的时候没看清楚还以为(2)是接着(1),最后却发现报: "Subversion reported an error while creating a repository!
       Make sure the folder is empty and not write protected."
最后换了另外一个空文件夹直接(2)竟然和(1)生成一样的文件夹和文件才知两个方法都是达到同一个目的的。
4,配置用户和权限

来到E:/svndemo/repository/conf文件夹,改动svnserve.conf:
# [general]
# password-db = passwd
改为:
[general]
password-db = passwd

然后改动同文件夹的passwd文件,去掉以下三行的凝视:
# [users]
# harry = harryssecret
# sally = sallyssecret
最后变成:
[users]
harry = harryssecret
sally = sallyssecret

在passwd文件里,“=”前的字符就是username,后面的就是password。还要注意“[users]”前面的凝视“#”一定要删除掉。

5,执行独立server

在随意文件夹下执行:
svnserve -d -r E:/svndemo/repository 我们的server程序就已经启动了。注意不要关闭命令行窗体,关闭窗体也会把svnserve停止。

6,初始化导入

来到我们想要导入的项目根文件夹,在这个样例里是E:/svndemo/initproject,文件夹下有一个readme.txt文件:

右键->TortoiseSVN->Import...
在URL of repository输入“svn://localhost/trunk”
在Import Message中输入你的日志信息

完毕之后文件夹没有不论什么变化,假设没有报错,数据就已经所有导入到了我们刚才定义的版本号库中。

须要注意的是,这一步操作能够全然在还有一台安装了TortoiseSVN的主机上进行。比如执行svnserve的主机的IP是133.96.121.22,则URL部分输入的内容就是“svn://133.96.121.22/trunk”。

7,基本client操作

取出版本号库到一个工作拷贝:

来到随意空文件夹下,在本例中是E:/svndemo/wc1,执行右键->Checkout,在URL of repository中输入svn://localhost/trunk,这样我们就得到了一份工作拷贝。

在工作拷贝中作出改动并提交:

打开readme.txt,作出改动,然后右键->Commit...,这样我们就把改动提交到了版本号库,我们能够执行。

察看所作的改动:

readme.txt上右键->TortoiseSVN->Show Log,这样我们就能够看到我们对这个文件全部的提交。在版本号1上右键->Compare with working copy,我们能够比較工作拷贝的文件和版本号1的差别。

最后,全部的内容都已经录制为动画文件,大家能够參考。

上一篇:一个由正则表达式引发的血案 vs2017使用rdlc实现批量打印 vs2017使用rdlc [asp.net core 源码分析] 01 - Session SignalR sql for xml path用法 MemCahe C# 操作Excel图形——绘制、读取、隐藏、删除图形 IOC,DIP,DI,IoC容器


下一篇:【转载】一个Sqrt函数引发的血案