有个一个项目projectA在repoX中(http://server/repoA/turnk/projectA),现在需要把projectA从repoX迁移到repoY中。
1.把projectA从repoX中dump下来
svnrdump dump http://server/repoX/turnk/projectA > projectA.dump
2.过滤dump文件,把空的revision去掉,并且,去掉/trunk目录
cat projectA.dump | svndumpfilter --drop-all-empty-revs --renumber-revs include /trunk/projectA > projectA.dump.new
3.导入到新的repoB中
svnadmin load --bypass-prop-validation http://server/repoY < projectA.dump.new
在迁移过程中碰到的问题,
- 在#2过滤空revision的时候,不知道为什么,svndumpfilter会把一些不是空的rivision也过滤掉,必须使用cat加管道符的方式,才能正确的过滤空的rivision。
- 在#2过滤的时候如果inclde后面的目录指定的是“/”而不是"/trunk/projectA",在#3导入时就会报“/trunk” aleady exist的错。
- 在正式导入先可以用命令svnadmin create testRepo在本地创建一个local的repo,进行测试。比如在/Users/shqu/svn目录执行此命令,那么testRepo的SVN地址为file:///Users/shqu/svn/testRepo
相关推荐
Subversion(简称SVN)是一款版本控制系统,用于管理软件项目中的源代码、文档等资源,允许团队成员协同工作并追踪文件的变化历史。在本教程中,我们将详细介绍如何在CentOS上安装并升级到SVN 1.8.9版本,该版本支持...
这条命令会将指定路径下的SVN仓库导出为一个名为`backup_full_年月日.dump`的文件,其中`/path/to/svn/repo`是SVN仓库的实际路径。 2. **增量备份** 增量备份仅保存自上次备份以来的更改。这种方式可以节省存储...
更改时用 SVNService -setup -d -r c:\otherplace\svnrepo 如果访问其中的一个项目c:\svnrepo\project1,可以指定路径 svn://localhost/svnrepo/project1 (注:作为url时用/) 第一次安装完后要到服务中手动启动它...
对于每个版本库,都需要一个对应的authz文件,如/var/svn/repo1/conf/authz。在这个文件中,可以定义用户和组的访问权限。例如: ``` [/] * = r [repo1:/] user1 = rw group1 = r [repo2:/] user2 = rw ...
Test::SVN::Repo - 用于测试的 Subversion 存储库装置 版本 版本 0.022 概要 # Create a plain on-disk repo my $repo = Test::SVN::Repo->new; # Create a repo with password authenticated server $repo = Test:...
- 从`https://IP:8080/svn/repo1`检出版本2到`/home/zyf/svnrepo1`: `svn checkout -r 2 https://IP:8080/svn/repo1 /home/zyf/svnrepo1 --username ad --password ****` ##### 3、svn export - **功能**: 导出一...
svn export --non-interactive --trust-server-cert https://svnserver/svn/repo backup_folder ``` - **添加权限**:确保批处理文件有执行权限,以便任务计划程序能够运行它。 - **设置任务计划**:打开Windows...
SVN_REPO_PATH=/path/to/svn/repo BACKUP_DIR=/path/to/backup DATE=$(date +%Y%m%d) svnadmin dump $SVN_REPO_PATH > $BACKUP_DIR/svn_backup_$DATE.dump # 若有云存储,添加上传备份文件的命令 # rsync -avz...
然后,运行`svnadmin create /opt/svn/repo`来生成一个新的SVN仓库。这个操作将在指定目录下生成一系列文件,如conf、db、hooks等,表示SVN仓库已创建成功。 为了使SVN服务器正常工作,你需要对其进行配置。进入`/...
- **修改svnserve.conf**:使用命令`vi /home/svn/repo/conf/svnserve.conf`编辑配置文件。在此文件中,需要对以下几项进行配置: - `anon-access = none`:禁止匿名访问。 - `auth-access = write`:允许认证用户...
svn export %SVN_REPO_PATH% %BACKUP_DIR%\exported_repo REM 压缩备份文件 7z a -tzip %BACKUP_DIR%\%BACKUP_FILE% %BACKUP_DIR%\exported_repo REM 清理导出的临时文件夹 rmdir /s /q %BACKUP_DIR%\...
SVNPath /var/svn/repo/my_repo AuthType Basic AuthName "My SVN Repository" AuthUserFile /etc/svn/passwd Require valid-user ``` 8. **设置用户和密码**:使用 `htpasswd` 工具创建用户和密码文件: ...
1. 创建SVN仓库:`svnadmin create /var/svn/repo_name` 2. 配置Apache的SSL(可选,但推荐用于安全传输): - 安装SSL模块:`sudo apt-get install ssl-cert` - 生成自签名证书:`sudo openssl req -x509 -nodes ...
<id>your-svn-repo-id <username>your-username <password>your-password ... ``` `id` 应该与 `pom.xml` 中的插件配置相匹配,以关联正确的凭证。 二、Maven与SVN的常用命令 1. **Checkout**:从SVN仓库...
svn relocate file:///path/to/old/repo file:///path/to/new/repo ``` 此命令将改变SVN的工作副本指向一个新的URL,但实际操作中,我们可以将`file:///path/to/new/repo`替换为一个无效的URL或不存在的路径,从而...
/usr/local/subversion/bin/svnserve --daemon --root /var/svn-repo ``` 其中`--daemon`参数表示以守护进程的方式运行,`--root`参数指定了版本库的根目录。 至此,SVN服务器的安装和配置全部完成。开发者可以...
SVNPath /path/to/svn/repo dav svn AuthType Basic AuthName "Subversion Repository" AuthUserFile /etc/apache2/dav_svn.passwd Require valid-user ``` 6. **创建SVN仓库**:使用`svnadmin`命令创建一...
如果你的SVN中的文档被误删除了,那么你可以通过下面的方法进行恢复。 1.首先我们在文件夹内创建一个演示用的文档。 2.在文件夹内单击鼠标右键点击“SVN commit...”,弹出commit to确认对话框,选择要提交的文件...
svn import /path/to/project file:///path/to/repo -m "Initial import" 这将将项目文件添加到版本库中。 五、启动svnserve svnserve是svn的服务器端程序,负责处理客户端的请求。我们可以使用svnserve命令来...