我在家里有一个存储库,可以在我的工作计算机上查看,以保存个人资料,例如我在工作时收到的电子邮件等信息。昨天我改变了一个文件然后去提交它但我收到了svn: File not found
错误。它非常奇怪,因为我最近没有在这个存储库中删除任何目录,一切都是最新的。我是唯一可以访问回购的人,所以我无法理解!
这是命令序列:
$ svn update filename.pdf
At revision 551.
$ cp filename.pdf.new filename.pdf
$ svn ci filename.pdf -m "updated"
Sending filename.pdf
Transmitting file data .svn: Commit failed (details follow):
svn: File not found: transaction '551-fg', path '/filesdir/filename.pdf'
如果有人对如何解决这个问题有任何想法,请告诉我。我还应该提到存储库存储在家里的外部ntfs驱动器上,我通过ssh远程启动和挂起,以使驱动器运行更长时间。驱动器可能正在消耗,但没有其他迹象。
我看到这个错误的所有其他帖子都是因为有人删除了一个目录,然后做了某种合并,但我没有做过这样的事情 - 我只是去做一个简单的提交!
根据Strelok的要求进行修改:
$ pwd
..../filesdir
$ svn status
! .
? filename.pdf.new
M filename.pdf
嗯因此看起来找不到filesdir
目录!这很奇怪,因为我绝对没有删除目录!无论如何,请尝试仅更新文件...
$ rm filename
$ cd ..
$ svn update filesdir
Restored 'filesdir/filename.pdf'
svn: Working copy path 'filesdir/filename.pdf' does not exist in repository
没有运气。也许尝试更新故障文件所在的整个目录...
$ mv filesdir/filename.pdf.new /tmp/
$ sudo rm -r filesdir/
$ svn update filesdir
A filesdir
A [lots of other files but not filename.pdf!!!]
$ cd filesdir
$ ls filename.pdf
ls: cannot access filename.pdf: No such file or directory
$ svn status filename.pdf
$ # no output!!!
$ mv /tmp/filename.pdf.new filename.pdf
$ svn status filename.pdf
? filename.pdf
尝试将文件添加到存储库,因为它似乎不在存储库中!
$ svn add filename.pdf
A (bin) filename.pdf
$ svn ci filename.pdf -m "added"
Adding (bin) filename.pdf
Transmitting file data .
Committed revision 552.
嗯,非常奇怪......好了它的固定(现在),但我不知道是什么原因引起了螺丝钉。啊,好吧:P