使用SVK建立SVN本地镜像
计划将一些代码放到 Google Code 上去,但是如果每次提交都要提交到 Google Code 那么会带来一些麻烦:
× 将代码提交到 Google Code 会比较慢
× 如果没有联机,就无法提交代码,无法进行版本管理
使用 SVK 可以很好的解决这个问题
== 建立本地SVK库环境 ==
安装 SVK 后,它缺省使用用户主工作目录作为库根目录,这一点不是太爽,最好指定SVN库目录。
修改 SVK.bat 文件,在开始添加环境变量的设置:
{{{
if "%SVKROOT%" == "" set SVKROOT=E:\shwen\svkroot
if "%SVKMERGE%" == "" set SVKMERGE=AraxisMerge
}}}
== 创建远程SVN库的本地镜像 ==
首先建立 Google Code SVN 库的本地镜像
{{{
svk mirror https://wikidoc4net.googlecode.com/svn/trunk/ //mirror/wikidoc4net
}}}
然后将 Google Code SVN 代码同步到本地镜像中
{{{
svk sync //mirror/wikidoc4net
}}}
然后为本地镜像建立分支,以后就可以在这个分支上工作了
{{{
svk mkdir //local
svk cp //mirror/wikidoc4net //local/wikidoc4net
}}}
以后,这个分支就可以象普通的 SVN 库一样使用,可以使用 TortoiseSVN 工具进行访问。
SVN库路径为 file:///e:/shwen/svkroot/local/local/wikidoc4net
== 提交以及同步 ==
当本地的修改到一定程度,需要提交到远程服务器上去时,首先要先更新远程镜像(在多人协同工作时,这个工作也可以随时进行,以便本地保持最新的改动,提交时不至于太多的冲突)
{{{
svk sync //mirror/wikidoc4net
svk smerge //mirror/wikidoc4net //local/wikidoc4net
}}}
在将本地修改提交到远程服务器前,先检查一下冲突:
{{{
svk smerge -C //local/wikidoc4net //mirror/wikidoc4net
}}}
如果有冲突,解决冲突后,用以下命令标志冲突解决完毕,提交代码
{{{
svk smerge -I -l //local/wikidoc4net //mirror/wikidoc4net
}}}
== 相关参考文章 ==
SVK Wiki: http://svk.bestpractical.com/view/SVKWin32
使用 SVK 构建分布式版本控制环境:http://www.ibm.com/developerworks/cn/java/j-lo-svk/
技术文摘==>用 SVK 管理源代码:http://www.linuxunion.net/index/technology/view.htm?t=js&id=74
× 将代码提交到 Google Code 会比较慢
× 如果没有联机,就无法提交代码,无法进行版本管理
使用 SVK 可以很好的解决这个问题
== 建立本地SVK库环境 ==
安装 SVK 后,它缺省使用用户主工作目录作为库根目录,这一点不是太爽,最好指定SVN库目录。
修改 SVK.bat 文件,在开始添加环境变量的设置:
{{{
if "%SVKROOT%" == "" set SVKROOT=E:\shwen\svkroot
if "%SVKMERGE%" == "" set SVKMERGE=AraxisMerge
}}}
== 创建远程SVN库的本地镜像 ==
首先建立 Google Code SVN 库的本地镜像
{{{
svk mirror https://wikidoc4net.googlecode.com/svn/trunk/ //mirror/wikidoc4net
}}}
然后将 Google Code SVN 代码同步到本地镜像中
{{{
svk sync //mirror/wikidoc4net
}}}
然后为本地镜像建立分支,以后就可以在这个分支上工作了
{{{
svk mkdir //local
svk cp //mirror/wikidoc4net //local/wikidoc4net
}}}
以后,这个分支就可以象普通的 SVN 库一样使用,可以使用 TortoiseSVN 工具进行访问。
SVN库路径为 file:///e:/shwen/svkroot/local/local/wikidoc4net
== 提交以及同步 ==
当本地的修改到一定程度,需要提交到远程服务器上去时,首先要先更新远程镜像(在多人协同工作时,这个工作也可以随时进行,以便本地保持最新的改动,提交时不至于太多的冲突)
{{{
svk sync //mirror/wikidoc4net
svk smerge //mirror/wikidoc4net //local/wikidoc4net
}}}
在将本地修改提交到远程服务器前,先检查一下冲突:
{{{
svk smerge -C //local/wikidoc4net //mirror/wikidoc4net
}}}
如果有冲突,解决冲突后,用以下命令标志冲突解决完毕,提交代码
{{{
svk smerge -I -l //local/wikidoc4net //mirror/wikidoc4net
}}}
== 相关参考文章 ==
SVK Wiki: http://svk.bestpractical.com/view/SVKWin32
使用 SVK 构建分布式版本控制环境:http://www.ibm.com/developerworks/cn/java/j-lo-svk/
技术文摘==>用 SVK 管理源代码:http://www.linuxunion.net/index/technology/view.htm?t=js&id=74
浙公网安备 33010602011771号