SVN配置方法Word文档下载推荐.docx

上传人:b****1 文档编号:4771613 上传时间:2023-05-04 格式:DOCX 页数:15 大小:23.96KB
下载 相关 举报
SVN配置方法Word文档下载推荐.docx_第1页
第1页 / 共15页
SVN配置方法Word文档下载推荐.docx_第2页
第2页 / 共15页
SVN配置方法Word文档下载推荐.docx_第3页
第3页 / 共15页
SVN配置方法Word文档下载推荐.docx_第4页
第4页 / 共15页
SVN配置方法Word文档下载推荐.docx_第5页
第5页 / 共15页
SVN配置方法Word文档下载推荐.docx_第6页
第6页 / 共15页
SVN配置方法Word文档下载推荐.docx_第7页
第7页 / 共15页
SVN配置方法Word文档下载推荐.docx_第8页
第8页 / 共15页
SVN配置方法Word文档下载推荐.docx_第9页
第9页 / 共15页
SVN配置方法Word文档下载推荐.docx_第10页
第10页 / 共15页
SVN配置方法Word文档下载推荐.docx_第11页
第11页 / 共15页
SVN配置方法Word文档下载推荐.docx_第12页
第12页 / 共15页
SVN配置方法Word文档下载推荐.docx_第13页
第13页 / 共15页
SVN配置方法Word文档下载推荐.docx_第14页
第14页 / 共15页
SVN配置方法Word文档下载推荐.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

SVN配置方法Word文档下载推荐.docx

《SVN配置方法Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《SVN配置方法Word文档下载推荐.docx(15页珍藏版)》请在冰点文库上搜索。

SVN配置方法Word文档下载推荐.docx

建议你再到控制面板-管理工具-服务中找到SVNService, 

右击选择”属性”, 

再将其启动类型设置为”自动”

6. 

打开c:

你会发现已经多了一些目录和文件, 

打开conf子目录, 

打开svnserve.conf文件, 

这里行前凡是有#的都等于是被注释忽略了, 

你可以把#去掉让那一行生效, 

或者自己新添加行. 

里面的英文注释已经详细说明了各种设置的含义, 

最后你设置[general]小节中行前没有#号的内容为:

anon-access=none

auth-access=write

password-db=passwd

含义是:

未验证用户无任何权限 

(如果把none修改为read就是给予读权限)

已验证用户给予写权限 

(当然也能读)

密码数据存放到passwd文件中

然后打开同目录的passwd文件来设置帐户:

同样, 

设置[users]小节中行前没有#号的内容, 

例如:

snowman=abc123

用户snowman的密码为abc123

在你需要进行版本控制的目录上右击, 

选择TortoiseSVN, 

再选择子菜单”导入…”, 

设置”文件库url”为svn:

//localhost 

点确定后就会提示文件正在导入.(雪人注:

这里是svn文件库与svn服务是同一台计算机的情况, 

所以可用localhost, 

其它机器如果要访问svn服务, 

应该用svn:

//svn服务器的IP地址, 

例如svn:

//10.0.0.52)

至此,SVN服务器配置完成

客户端配置:

没安装TortoiseSVN的计算机先安装它并重启计算机.(雪人注:

具体步骤参照前面搭建服务器端的第3步)

创建一个准备用来存放版本控制工程的目录, 

例如d:

\project, 

然后在”我的电脑”中右击这个目录, 

选择”SVN取出…”, 

接下来会问你用户名和帐号, 

你就填写前面搭建服务器端所设置的用户snowman密码abc123

(文件库url可参照前面搭建服务器端第6步的注解)

点确定后就会提示文件正在取出到d:

\project

至此,SVN客户端配置完成, 

你会看到d:

\project及其下面的文件都被标记了绿色对勾

客户端的简单日常使用:

要取得工程的当前的最新版本, 

右击d:

选择”SVN更新”

你更改工程后, 

要将你的修改更新到SVN, 

选择”SVN提交”(谨慎的话请先更新到SVN最新版本后再提交)

其实就是将 

svnservice 

文件拷贝到你已经装好的TortoiseSVN目录下,然后运行上述的那些命令后(svnservice-install-d-rc:

\svnhome),去控制面板-〉管理工具-〉服务,既可以看到svn的服务了,启动即可

SVN安装与启动服务

2010-02-2211:

25

[转]一、安装

首先下载一个SubVersion,和TortoiseSVN。

前者是svn的服务器端,后者是svn的客户端。

注意服务器端得版本和客户端得版本一定要一致才可以,否则会出现错误:

Error*期望文件系统格式“2”;

发现格式“3”

使用subversion过程中出现Error*期望文件系统格式“2”;

发现格式“3”错误,这是服务器程序subversion和客户端程序TortoiseSVN版本号不一致的。

删除subversion和原有的版本库,用相同的版本重新安装subversion和TortoiseSVN,问题即可解决。

下面我以Subversion1.4.5和TortoiseSVN1.4.5为例

二、建库

找一个地方见一个文件夹,这个文件夹是放你的项目的。

我们把它称为库。

以下以src为例。

然后再这个文件夹上右键,选择Createrepositoryhere或者在命令行里执行D:

\ApplicationSetUp\Subversion\bin>

svnadmincreateE:

\src

命令行要在安装目录中bin文件夹下执行。

三、设置用户名和密码

设置用户名和密码是成员之间修改项目后伤处使用的。

下面我们就来设置一下用户名和密码吧。

在刚才建的库文件夹下的conf文件夹里找到一个叫svnserve.conf的文件。

用一个文本编辑器将它打开。

然后找到##password-db=passwd这行代码。

将这行代码签名的#号全部去掉,并且确保顶格不存在空格。

#表示注释,去掉#和空格表示启用密保文件。

然后再conf文件夹下找到一个叫password的文件,同样用文本编辑器打开,然后看到如下代码:

[users]

#harry=harryssecret

#sally=sallyssecret

这两行是两个用户名和密码,等号前面是用户名,后面是密码,一行是一个用户。

我们可以直接在这下面追加我们自己设置的用户名,也可以把他删除重写。

例如:

jane=123456

spring=789456

写好之后保存就可以了。

四、启动服务

同样是在安装目录下的bin文件下执行D:

svnserve-d-rE:

\src,效果如下

这样服务就启动成功了。

这个命令窗口不可以关,如果关闭的话服务也就关闭了。

这样很不方便,解决的办法就是将服务添加到windows系统服务里面。

具体操作如下:

C:

\>

sccreatesvnbinpath="

D:

\ApplicationSetUp\Subversion\bin\svnserve.exe--service-rc:

\svnroot"

displayname="

SubversionServer"

depend=tcpipstart=auto

运行这一行命令,两个路径分别是svnserve.exe的地址和库的地址,其中svnservcer.exe就是刚才我们启动服务用的那个,所以写那个路径就好了。

start=auto,每次开机自动运行;

想手动的话,netstartsvn或者netstopsvn切换开关。

服务添加成功后结果是:

这样我们的服务就启动成功了,现在把命令窗口关闭也没有关系了。

五、导入项目

找到自己的项目,然后在项目上右键。

Import……,出现如图窗口:

上面的是我要导入的库德地址:

svn:

//ip/库文件夹名称。

建议不要勾选左下角的复选框。

ignored是忽略的意思,比如java的class包他是经常变化的,成员之间没有交换的必要。

就可以将它忽略。

还有一些私人的配置文件之类的。

不然每个人都上传自己的配置文件,导致每个人在每次更新后,系统都跑不动。

直接点击确定就可以上传了。

下面就是每个成员机器上都装上TortoiseSVN,访问服务器上的项目就可以了。

自己建一个存放项目的文件夹,然后右键checkout:

上面的地址是服务器地址。

下面的地址是下载下来存放到哪里,点击ok就可以从服务器上当下来了。

建议每次编辑项目前都update一次,表示得到最新版本。

编辑完之后再commit,这样用svn管理项目就省了非常多的时间。

好了,就写到这里。

希望对大家有帮助。

svn备份和还原

除去最常用的update,checkout,commit等操作,最常见的就是对svn版本库的备份和还原。

备份策略

svn备份一般采用三种方式:

1)svnadmindump

2)svnadminhotcopy

3)svnsync.

注意,svn备份不宜采用普通的文件拷贝方式(除非你备份的时候将库暂停),如copy命令、rsync命令。

笔者曾经用rsync命令来做增量和全量备份,在季度备份检查审计中,发现备份出来的库大部分都不可用,因此最好是用svn本身提供的功能来进行备份。

优缺点分析:

==============

第一种svnadmindump是官方推荐的备份方式,优点是比较灵活,可以全量备份也可以增量备份,并提供了版本恢复机制。

缺点是:

如果版本比较大,如版本数增长到数万、数十万,那么dump的过程将非常慢;

备份耗时,恢复更耗时;

不利于快速进行灾难恢复。

个人建议在版本数比较小的情况下使用这种备份方式。

第二种svnadminhotcopy原设计目的估计不是用来备份的,只能进行全量拷贝,不能进行增量备份;

优点是:

备份过程较快,灾难恢复也很快;

如果备份机上已经搭建了svn服务,甚至不需要恢复,只需要进行简单配置即可切换到备份库上工作。

比较耗费硬盘,需要有较大的硬盘支持(俺的备份机有1TB空间,呵呵)。

第三种svnsync实际上是制作2个镜像库,当一个坏了的时候,可以迅速切换到另一个。

不过,必须svn1.4版本以上才支持这个功能。

当制作成2个镜像库的时候起到双机实时备份的作用;

当作为2个镜像库使用时,没办法做到“想完全抛弃今天的修改恢复到昨晚的样子”;

而当作为普通备份机制每日备份时,操作又较前2种方法麻烦。

备份的命令写道

全备份:

使用svnadmindump或svnadminhotcopy或svnsync来做,

hotcopy:

svnadminhotcopypath/to/repositorypath/to/backup–clean-logs

dump:

svnadmindump版本库路径及名称–revision导出的版本号>

导出的命名

增量备份:

使用svnadmindump的–incremental选项来实现

svnadmindump版本库路径及名称–revision上次导出的版本号:

到本次要导出到的版本号–incremental>

一个技巧:

如果你有一个较大的Subsersion版本库而你又想用最少的空间来将它备份下来,用这个命令(请将/repo替换成你的版本库路径)吧:

svnadmindump–deltas/repo|bzip2|teedump.bz2|md5sum>

dump.md5

分步解释:

最重要的一步是-deltas,将消耗更多的CPU资源,但拥有更有效的差异存储办法。

bzip2压缩方案比gzip慢,但换来的更好的压缩率。

更有趣的是,tee方法将压缩的数据流转向到文件dump.bz2,同时将其输出到标准输出,后者有转向给了MD5摘要计算工具。

还原命令写道

还原版本:

svnadminload要恢复的版本库路径及名称<

我的svn是搭建在windows上的,用visualsvn挺方便,参考网上的bat备份svn的命令,我写了一个备份和还原全部版本库的bat脚本,

备份,需要把脚本放在版本库根目录下运行,例如dumpall.bat, 

不指定参数则备份到当前目录下,否则备份到指定目录:

Bat代码

1.@ECHO 

OFF 

2.SET 

DUMPTO_DIR="

."

3.if 

not 

"

%1"

== 

( 

4. 

echo 

Back 

up 

all 

to 

%1 

5. 

SET 

DUMPTO_DIR=%1 

6.) 

 

7. 

8.SET 

VAR_DATE=%DATE:

~0,4%%DATE:

~5,2%%DATE:

~8,2% 

9.dir 

/B 

/AD 

>

DIRS 

10. 

11.IF 

EXIST 

DUMP_FILES 

12. 

DEL 

/Q 

DUMP_FILES 

13.) 

14.FOR 

/F 

%%i 

IN 

(DIRS) 

DO 

15. 

REPOS_NAME=%%i 

16. 

CALL 

:

DUMP_REPOS 

17.) 

18.SET 

REPOS_NAME= 

19. 

20.ECHO. 

21.IF 

%DUMPTO_DIR%\Repos_%VAR_DATE%.zip 

22. 

Delete 

existing 

compressed 

dump 

file 

23. 

del 

%DUMPTO_DIR%\Repos_%VAR_DATE%.zip 

24.) 

25.ECHO 

Compressing 

files... 

26.zip 

-j 

%DUMPTO_DIR%\*.bin 

27. 

28.ECHO 

29.FOR 

(DUMP_FILES) 

30. 

%DUMPTO_DIR%\%%i 

31.) 

32. 

33.DEL 

34.DEL 

35.SET 

DUMPTO_DIR= 

36. 

37.ECHO 

Successed. 

38.GOTO 

EOF 

39. 

40.:

==== 

Functions 

==== 

41.:

42.SET 

DUMP_FILE=%REPOS_NAME%.bin 

43.ECHO 

Dumping 

repository 

^"

%REPOS_NAME%^"

... 

44.svnadmin 

-q 

%DUMPTO_DIR%/%DUMP_FILE% 

45.IF 

%errorlevel%==0 

46. 

ECHO 

%DUMP_FILE% 

47.) 

ELSE 

48. 

%DUMP_FILE% 

49. 

Dump 

failed. 

50.) 

51.SET 

DUMP_FILE= 

52. 

53.ECHO. 

@ECHOOFF

SETDUMPTO_DIR="

ifnot"

=="

echoBackupallto%1

SETDUMPTO_DIR=%1

SETVAR_DATE=%DATE:

~8,2%

dir/B/AD>

DIRS

IFEXISTDUMP_FILES(

DEL/QDUMP_FILES

FOR/F%%iIN(DIRS)DO(

SETREPOS_NAME=%%i

CALL:

DUMP_REPOS

SETREPOS_NAME=

ECHO.

IFEXIST%DUMPTO_DIR%\Repos_%VAR_DATE%.zip(

echoDeleteexistingcompresseddumpfile

del%DUMPTO_DIR%\Repos_%VAR_DATE%.zip

ECHOCompressingdumpfiles...

zip-j%DUMPTO_DIR%\Repos_%VAR_DATE%.zip%DUMPTO_DIR%\*.bin

ECHODeletedumpfiles...

FOR/F%%iIN(DUMP_FILES)DO(

DEL/Q%DUMPTO_DIR%\%%i

DEL/QDIRS

DEL/QDUMP_FILES

SETDUMPTO_DIR=

ECHOSuccessed.

GOTO:

EOF

====Functions====

SETDUMP_FILE=%REPOS_NAME%.bin

ECHODumpingrepository^"

...

svnadmindump^"

-q>

%DUMPTO_DIR%/%DUMP_FILE%

IF%errorlevel%==0(

ECHO%DUMP_FILE%>

DUMP_FILES

)ELSE(

DEL/Q%DUMP_FILE%

ECHODump^"

failed.

SETDUMP_FILE=

还原:

cd到备份目录,再运行,例如loadall.bat,如果不指定参数,则认为当前目录就是备份的目录,否则从指定目录进行还原。

另外,如果是备份到了压缩包,需要先解压。

1.SET 

VAR_IS_EMPTY_DIR=TRUE 

2. 

3.SET 

LOAD_DIR="

;

4.IF 

NOT 

=="

LOAD_DIR=%1 

6.) 

8.echo 

%LOAD_DIR% 

9. 

10.SET 

VAR_IS_EMPTY_DIR= 

11.dir 

/A-D 

%LOAD_DIR%\*.bin 

12.IF 

%errorlevel%"

0"

13. 

Finded 

file. 

14.) 

Error 

Can 

find 

17. 

GOTO 

18.) 

19.FOR 

20. 

REPOS_FILE=%%i 

21. 

LOAD_REPOS 

22.) 

23.SET 

REPOS_FILE= 

24.DEL 

26.GOTO 

27.:

28.:

29.SET 

REPOS_NAME=%REPOS_FILE:

~0,-4% 

30.mkdir 

%REPOS_NAME% 

31.ECHO 

32.ECHO 

Loading 

33.svnadmin 

create 

34.svnadmin 

load 

%cd%\%REPOS_NAME% 

<

%LOAD_DIR%/%REPOS_FILE% 

35.IF 

37.) 

38. 

RMDIR 

Load 

40.) 

41.SET 

42.ECHO. 

SETVAR_IS_EMPTY_DIR=TRUE

SETLOAD_DIR="

IFNOT"

SETLOAD_DIR=%1

echo%LOAD_DIR%

SETVAR_IS_EMPTY_DIR=

dir/B/A-D%LOAD_DIR%\*.bin>

IF"

ECHOFindeddumpfile.

ECHOError:

Cannotfinddumpfile.

DELDUMP_FILES

GOTO:

SETREPOS_FILE=%%i

LOAD_REPOS

SETREPOS_FILE=

SETREPOS_NAME=%REPOS_FILE:

~0,-4%

mkdir%REPOS_NAME%

ECHO%REPOS_NAME%

ECHOLoadingrepository^"

svnadmi

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2