我试图在Cygwin上创建Subversion存储库,但我无法添加任何内容。当我尝试提交时,我收到错误" svn:E160004:rev-file"中的更改行无效。这是我的工作流程:
创建新存储库
svnadmin create ~/repo
将存储库签出到工作目录
mkdir ~/working
svn co file:///home/username/repo ~/working
向存储库添加内容
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
使示例挂钩不可执行,但是没有修复错误。我没有使用任何提交挂钩。
我使用的是Windows 7 Enterprise 64位。我正在使用Cygwin的32位安装。我刚刚更新了Cygwin并安装了Subversion,因此该软件是最新版本。