错误信息 :
"svn:无法打开文件'/Users/username/Projects/myproject/trunk/project/.svn/text-base/filetoupdate.h.svn-base':没有这样的文件或目录"
题:
我有一个问题我用一个新文件替换了一个项目(在Xcode中)中的文件(作为参考,如果这有所不同,新文件的名称与我之前删除的文件相同).
现在当我尝试在Xcode中提交我的更改时,我得到上面详述的错误消息,并且无法提交更改(即添加新文件).
在文件系统视图中(在屏幕左侧的Xcode中),文件旁边有一个R(表示在存储库中替换).
有谁知道如何修复它所以我可以提交文件?
谢谢
使用不区分大小写的文件系统时,Subversion中存在错误或限制:
https://superuser.com/questions/303348/cant-checkout-in-subversion
检查包含两个文件的存储库时,通常会显示此错误,这两个文件的名称仅在大小写上有所不同.当然,这些不能同时存在于不区分大小写的文件系统上的同一目录中.SVN可以提供更有用的错误消息,但它无法真正解决问题.
您的问题有点不同,因为我认为filetoupdate.h
您的文件系统中不再存在该文件(旧案例).所以这不是工作目录中的案例冲突.但我想SVN正试图.svn/text-base
用新案例创建文件,而旧版本仍然存在,而且失败了(出于同样的原因).
您可以尝试首先从Subversion中删除该文件,保留本地副本(未经测试).必须从SVN控件中删除新副本才能使提交成功:
svn rm --keep-local --force FileToUpdate.h
Run Code Online (Sandbox Code Playgroud)
并且必须删除旧副本,以便我们稍后添加新副本:
svn rm --keep-local filetoupdate.h
Run Code Online (Sandbox Code Playgroud)
提交此更改:
svn commit
Run Code Online (Sandbox Code Playgroud)
现在希望您可以将新文件添加到版本控制:
svn add FileToUpdate.h
Run Code Online (Sandbox Code Playgroud)
如果这不起作用,您可能需要吹掉整个结账,然后重新开始.