删除名称“svn:”的svn分支

时间:2016-03-11 18:52:42

标签: svn tortoisesvn

我公司的某个人意外地创建了一个名为“svn:”的新分支(带冒号),现在我们似乎都无法删除它。 TortoiseSVN在Windows中给我们错误,OSX上的CLI svn表示提交失败

svn: E200012: Commit failed (details follow):
svn: E200012: system('/Users/user-name/Desktop/svn_log.txt svn-commit.tmp') returned 32512
svn: E200012: Your commit message was left in a temporary file:
svn: E200012:    '/Users/user-name/Desktop/app/svn-commit.tmp'

使用svn-commit.tmp中的消息:

--This line, and those below, will be ignored--

D    branches/svn:

有谁能告诉我如何删除这个分支?

编辑:TortoiseSVN在我尝试浏览分支时出现此错误,这可能是问题的原因,但仍然没有告诉我如何修复它...

enter image description here

2 个答案:

答案 0 :(得分:2)

在Windows 10上使用SVN 1.9.3,我无法重现您的问题:

> svnadmin create C:\path\to\repo

> svn co "file:///C:/path/to/repo" wc
A    wc\branches
A    wc\tags
A    wc\trunk
Checked out revision 1.

> svn mkdir "file:///C:/path/to/repo/branches/svn:" --parents -m "Creating Branch"
Committing transaction...
Committed revision 2.

> svn ls "file:///C:/path/to/repo/branches" -v
  2 username                   Mar 11 14:00 ./
  2 username                   Mar 11 14:00 svn:/

> svn delete "file:///C:/path/to/repo/branches/svn:" -m "Deleting Branch"
Committing transaction...
Committed revision 3.

添加有关您的环境的更多信息,以及您用来删除目录的命令。

答案 1 :(得分:1)

重命名有帮助吗?无论如何,如果没有任何作用,并且您想要摆脱该提交,您可以svnadmin dumpsvnadmin load排除有问题的修订。 要做到这一点,你需要:

  1. svnadmin dump -r0:xx --incremental repositoryURI > 0-xx.dump xx 是有问题的修订版
  2. svnadmin dump -ryy:zz --incremental repositoryURI > yy-zz.dump yy xx 版本+ 1而 zz 是回购邮件中的最后一个版本。
  3. 在服务器上创建新存储库。
  4. svnadmin load repository < 0-xx.dump
  5. svnadmin load repository < yy-zz.dump
  6. 这是一个危险程序。在尝试执行此操作之前,请确保备份存储库。