1

我正在尝试在 Cygwin 上创建一个 Subversion 存储库,但我无法添加任何内容。当我尝试提交时,我收到错误“svn: E160004: Invalid changes line in rev-file”。这是我的工作流程:

  1. 创建一个新的存储库

    svnadmin create ~/repo

  2. 将存储库签出到工作目录

    mkdir ~/working
    svn co file:///home/username/repo ~/working

  3. 将内容添加到存储库

    mkdir -p ~/working/myproject/trunk
    cd ~/working
    echo "Blah" > myproject/trunk/file.txt
    svn add myproject
    svn commit -m "Commit message"

最后一步失败并显示以下消息:

Adding         myproject
Adding         myproject/trunk
Adding         myproject/trunk/file.txt
Transmitting file data .svn: E160004: Commit failed (details follow):
svn: E160004: Invalid changes line in rev-file

我还尝试了不同的工作流程。我尝试创建工作目录,添加内容,然后使用svn import将内容添加到存储库。但我得到相同的结果。

奇怪的是,如果我使用 BDB 后端而不是 FSFS 创建存储库,它可以正常工作。我可以毫无问题地添加内容。我尝试将内容添加到 BDB 支持的存储库,创建一个 FSFS 支持的存储库,并使用 svnadmin dump/load 复制数据,但是当我尝试将内容添加到 FSFS 支持的存储库时出现相同的错误。如果可能的话,我更喜欢使用 FSFS 来实现互操作性和便于备份/恢复。

我想也许提交钩子是问题所在。当我创建存储库时,我看到所有示例挂钩都是可执行的。我曾经chmod a-x使示例挂钩无法执行,但这并没有解决错误。我没有使用任何提交挂钩。

我使用的是 64 位 Windows 7 企业版。我正在使用 Cygwin 的 32 位安装。我昨天刚刚更新了 Cygwin 并安装了 Subversion,所以该软件是最新版本。

4

0 回答 0