Revision [276]

Last edited on 2007-11-17 10:08:20 by FishyWang [* recover from spam]
Additions:
SVN是用来取代CVS的版本控制工具
[[http://tortoisesvn.tigris.org/ TortoiseSVN]], 用法跟TortoiseCVS差不多,与Explorer集成,用起来很方便,这里就不多说了:)
SVN的Server有Standalone和与Apache结合两种方式,由于后一种需要Apache2,所以我用的是Standalone方式。
1) 首先,下载[[http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91 官方命令行工具]]并安装;
1) 在本机上建立一个目录作为所有repo的根目录,我用的是D:\svnroot
1) 在根目录上建立repo的子目录,比如D:\svnroot\project1
1) 进入D:\svnroot\project1目录,使用TortoiseSVN的"Create Repository here..."功能,选择Berkeley DB,会在这里创建repo
1) 进入创建好的conf目录(D:\svnroot\project1\conf),修改passwd和svnserve.conf文件,都是类似于ini的语法
1) 都好了后就可以在命令行运行"svnserve -d -r D:/svnroot"来启动server了,其中-d表示daemon方式运行,-r表示以d:\svnroot作为根目录
1) 如果想要作为系统服务,可以用第三方软件,我用的是FireDaemon Lite 1.6,现在官方已经不提供免费的Lite版本了,[[http://wang.yuxuan.org/files/FireDaemon-Lite-1_6-GA.exe 这里可以下载]]
这里需要注意的是:
- passwd里面是用明文存密码,而且貌似只有用apache才能存hash,这点有很多人骂,而且svn也不提供类似于CVS for NT提供的"cvs passwd"命令
- svn up -rVersion filename 可以回退到特定的版本,在此版本上继续编辑,ci以后版本号会从HEAD继续增加。
==== SVN repo的后台更改 ====
SVN的repo的后台有两种格式:bdb(Berkeley DB)和fsfs(文件系统),而bdb又有很多版本,这些后台彼此都不兼容。
当要将已有的repo从一种后台转换成另一种后台(比如从bdb到fsfs,或者升级了本机bdb/svn的版本)的时候,可以使用下面的方法:
1) 停止apache或者svnserve,防止数据写入
1) 创建临时的新repo目录,使用新的后台
1) dump老repo并load到新的里面去,使用这个命令:
1) 如果是升级,上一步分成两步(先dump到文件,再从文件load)
1) 检查一下老repo的hooks目录下有没有后来增加的文件(新repo里面没有的),若有则cp过去
1) 用新repo替换掉老的,启动apache或者svnserve
1) 如果确认无误,可以删除掉老的了
Deletions:
zelropasb
SVN是用来取代CVS的版本控制工具
[[http://tortoisesvn.tigris.org/ TortoiseSVN]], 用法跟TortoiseCVS差不多,与Explorer集成,用起来很方便,这里就不多说了:)
SVN的Server有Standalone和与Apache结合两种方式,由于后一种需要Apache2,所以我用的是Standalone方式。
1) 首先,下载[[http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91 官方命令行工具]]并安装;
1) 在本机上建立一个目录作为所有repo的根目录,我用的是D:\svnroot
1) 在根目录上建立repo的子目录,比如D:\svnroot\project1
1) 进入D:\svnroot\project1目录,使用TortoiseSVN的"Create Repository here..."功能,选择Berkeley DB,会在这里创建repo
1) 进入创建好的conf目录(D:\svnroot\project1\conf),修改passwd和svnserve.conf文件,都是类似于ini的语法
1) 都好了后就可以在命令行运行"svnserve -d -r D:/svnroot"来启动server了,其中-d表示daemon方式运行,-r表示以d:\svnroot作为根目录
1) 如果想要作为系统服务,可以用第三方软件,我用的是FireDaemon Lite 1.6,现在官方已经不提供免费的Lite版本了,[[http://wang.yuxuan.org/files/FireDaemon-Lite-1_6-GA.exe 这里可以下载]]
这里需要注意的是:
- passwd里面是用明文存密码,而且貌似只有用apache才能存hash,这点有很多人骂,而且svn也不提供类似于CVS for NT提供的"cvs passwd"命令
- svn up -rVersion filename 可以回退到特定的版本,在此版本上继续编辑,ci以后版本号会从HEAD继续增加。
==== SVN repo的后台更改 ====
SVN的repo的后台有两种格式:bdb(Berkeley DB)和fsfs(文件系统),而bdb又有很多版本,这些后台彼此都不兼容。
当要将已有的repo从一种后台转换成另一种后台(比如从bdb到fsfs,或者升级了本机bdb/svn的版本)的时候,可以使用下面的方法:
1) 停止apache或者svnserve,防止数据写入
1) 创建临时的新repo目录,使用新的后台
1) dump老repo并load到新的里面去,使用这个命令:
1) 如果是升级,上一步分成两步(先dump到文件,再从文件load)
1) 检查一下老repo的hooks目录下有没有后来增加的文件(新repo里面没有的),若有则cp过去
1) 用新repo替换掉老的,启动apache或者svnserve
1) 如果确认无误,可以删除掉老的了


Revision [271]

Edited on 2007-11-16 15:26:38 by MondaRerro [* recover from spam]
Additions:
zelropasb
SVN是用来取代CVS的版本控制工具
[[http://tortoisesvn.tigris.org/ TortoiseSVN]], 用法跟TortoiseCVS差不多,与Explorer集成,用起来很方便,这里就不多说了:)
SVN的Server有Standalone和与Apache结合两种方式,由于后一种需要Apache2,所以我用的是Standalone方式。
1) 首先,下载[[http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91 官方命令行工具]]并安装;
1) 在本机上建立一个目录作为所有repo的根目录,我用的是D:\svnroot
1) 在根目录上建立repo的子目录,比如D:\svnroot\project1
1) 进入D:\svnroot\project1目录,使用TortoiseSVN的"Create Repository here..."功能,选择Berkeley DB,会在这里创建repo
1) 进入创建好的conf目录(D:\svnroot\project1\conf),修改passwd和svnserve.conf文件,都是类似于ini的语法
1) 都好了后就可以在命令行运行"svnserve -d -r D:/svnroot"来启动server了,其中-d表示daemon方式运行,-r表示以d:\svnroot作为根目录
1) 如果想要作为系统服务,可以用第三方软件,我用的是FireDaemon Lite 1.6,现在官方已经不提供免费的Lite版本了,[[http://wang.yuxuan.org/files/FireDaemon-Lite-1_6-GA.exe 这里可以下载]]
这里需要注意的是:
- passwd里面是用明文存密码,而且貌似只有用apache才能存hash,这点有很多人骂,而且svn也不提供类似于CVS for NT提供的"cvs passwd"命令
- svn up -rVersion filename 可以回退到特定的版本,在此版本上继续编辑,ci以后版本号会从HEAD继续增加。
==== SVN repo的后台更改 ====
SVN的repo的后台有两种格式:bdb(Berkeley DB)和fsfs(文件系统),而bdb又有很多版本,这些后台彼此都不兼容。
当要将已有的repo从一种后台转换成另一种后台(比如从bdb到fsfs,或者升级了本机bdb/svn的版本)的时候,可以使用下面的方法:
1) 停止apache或者svnserve,防止数据写入
1) 创建临时的新repo目录,使用新的后台
1) dump老repo并load到新的里面去,使用这个命令:
1) 如果是升级,上一步分成两步(先dump到文件,再从文件load)
1) 检查一下老repo的hooks目录下有没有后来增加的文件(新repo里面没有的),若有则cp过去
1) 用新repo替换掉老的,启动apache或者svnserve
1) 如果确认无误,可以删除掉老的了
Deletions:
SVN是用来取代CVS的版本控制工具
[[http://tortoisesvn.tigris.org/ TortoiseSVN]], 用法跟TortoiseCVS差不多,与Explorer集成,用起来很方便,这里就不多说了:)
SVN的Server有Standalone和与Apache结合两种方式,由于后一种需要Apache2,所以我用的是Standalone方式。
1) 首先,下载[[http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91 官方命令行工具]]并安装;
1) 在本机上建立一个目录作为所有repo的根目录,我用的是D:\svnroot
1) 在根目录上建立repo的子目录,比如D:\svnroot\project1
1) 进入D:\svnroot\project1目录,使用TortoiseSVN的"Create Repository here..."功能,选择Berkeley DB,会在这里创建repo
1) 进入创建好的conf目录(D:\svnroot\project1\conf),修改passwd和svnserve.conf文件,都是类似于ini的语法
1) 都好了后就可以在命令行运行"svnserve -d -r D:/svnroot"来启动server了,其中-d表示daemon方式运行,-r表示以d:\svnroot作为根目录
1) 如果想要作为系统服务,可以用第三方软件,我用的是FireDaemon Lite 1.6,现在官方已经不提供免费的Lite版本了,[[http://wang.yuxuan.org/files/FireDaemon-Lite-1_6-GA.exe 这里可以下载]]
这里需要注意的是:
- passwd里面是用明文存密码,而且貌似只有用apache才能存hash,这点有很多人骂,而且svn也不提供类似于CVS for NT提供的"cvs passwd"命令
- svn up -rVersion filename 可以回退到特定的版本,在此版本上继续编辑,ci以后版本号会从HEAD继续增加。
==== SVN repo的后台更改 ====
SVN的repo的后台有两种格式:bdb(Berkeley DB)和fsfs(文件系统),而bdb又有很多版本,这些后台彼此都不兼容。
当要将已有的repo从一种后台转换成另一种后台(比如从bdb到fsfs,或者升级了本机bdb/svn的版本)的时候,可以使用下面的方法:
1) 停止apache或者svnserve,防止数据写入
1) 创建临时的新repo目录,使用新的后台
1) dump老repo并load到新的里面去,使用这个命令:
1) 如果是升级,上一步分成两步(先dump到文件,再从文件load)
1) 检查一下老repo的hooks目录下有没有后来增加的文件(新repo里面没有的),若有则cp过去
1) 用新repo替换掉老的,启动apache或者svnserve
1) 如果确认无误,可以删除掉老的了


Revision [206]

Edited on 2006-04-11 01:50:09 by FishyWang [* recover from spam]
Additions:
%%
svnadmin create /path/to/new/repo --fs-type fsfs(or bdb)
%%
1) dump老repo并load到新的里面去,使用这个命令:
%%
svnadmin dump /path/to/old/repo -q | svnadmin load /path/to/new/repo
%%
Deletions:
1) dump老repo并load到新的里面去,使用这个命令:%% svnadmin dump /path/to/old/repo -q | svnadmin load /path/to/new/repo %%


Revision [205]

Edited on 2006-04-11 01:40:45 by FishyWang [+ svn change repo backend]
Additions:
==== SVN repo的后台更改 ====
SVN的repo的后台有两种格式:bdb(Berkeley DB)和fsfs(文件系统),而bdb又有很多版本,这些后台彼此都不兼容。
当要将已有的repo从一种后台转换成另一种后台(比如从bdb到fsfs,或者升级了本机bdb/svn的版本)的时候,可以使用下面的方法:
1) 停止apache或者svnserve,防止数据写入
1) 创建临时的新repo目录,使用新的后台
1) dump老repo并load到新的里面去,使用这个命令:%% svnadmin dump /path/to/old/repo -q | svnadmin load /path/to/new/repo %%
1) 如果是升级,上一步分成两步(先dump到文件,再从文件load)
1) 检查一下老repo的hooks目录下有没有后来增加的文件(新repo里面没有的),若有则cp过去
1) 用新repo替换掉老的,启动apache或者svnserve
1) 如果确认无误,可以删除掉老的了


Revision [85]

Edited on 2005-11-07 21:16:35 by sina152-194.staff.sina.com.cn [+ svn change repo backend]
Additions:
==== SVN on console ====
- svn up -rVersion filename 可以回退到特定的版本,在此版本上继续编辑,ci以后版本号会从HEAD继续增加。


Revision [67]

The oldest known version of this page was created on 2005-10-30 01:02:54 by FishyWang [+ svn change repo backend]
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki