bah*_*rep 3 svn svnadmin svn-administraton svn-repository fsfs
我遇到了 Apache Subversion 存储库的问题,我正在寻找最佳解决方案:
我无法提交到 Subversion 存储库,并且出现错误:
svn: E720002: Commit failed (详情如下): svn: E720002: Can't open file 'C:\Repositories\myproject\db\txn-current': 系统找不到指定的文件。
如果我创建一个空txn-current
文件,如果在提交时会出现另一个错误:
svn: E070014: 提交失败 (详细信息如下): svn: E070014: 无法读取文件 'C:\Repositories\myproject\db\txn-current': End of file found
注意:假设我没有存储库的备份,因此我必须手动修复该问题。
StackOverflow 上已经讨论了相同的行为:svn commit problem, Cannot read 'd:\UC\db\txn-current': End of file found。但是我怀疑那里的答案是否真的有帮助:
我不认为\db\txn-current
手动创建并放置一个0
(或任何其他整数)是一个很好的解决方案。我想它可能会在不久的将来导致一些意想不到的行为,
svnadmin recover
和/或svnadmin verify
不创建和/或填充txn-current
. 这些命令在这种情况下是无能为力的。
根据FSFS 描述 \db\txn-current
文件包含下一个交易密钥号。如果我将一些整数放入文件,那么我可以提交并且整数将增加 1。
然而,看起来像放置一些不相关的整数会破坏我的回购中的某些东西,我不希望这种情况发生。
“txn-current”文件是一个仅包含一个 base-36 数字的单行文本文件。当前值将用于下一个事务名称,以及事务所基于的修订号。该序列号确保事务名称不会被重用,即使事务被中止并开始基于相同修订的新事务也是如此。FSFS 对这个文件执行的唯一操作是“get and increment”;“txn-current-lock”文件在此操作期间被锁定。
我应该怎么做才能\db\txn-current
正确解决问题?我应该在文件中放入什么整数?有没有其他方法可以解决这个问题?
编辑:
db/current
文件,我如何解决相同的问题(不存在或为空)?我有类似的问题。为了解决,我编辑了'txn-current'文件,在里面放了一些大数字,比如xxxxx。除此之外,我还必须在“db\transactions”文件夹中编辑另一个名为“current”的文件。我从这个文件中删除了所有内容,只是添加了一个输入并关闭了这个文件。