I can't perform any Subversion operations on my Eclipse project as Subclipse can't rename a file. The error is:
我不能在Eclipse项目上执行任何Subversion操作,因为Subclipse不能重命名文件。错误的是:
Caused by: org.tigris.subversion.javahl.ClientException: svn: Cannot rename file '/Users/damianharvey/Sites/Odyssey3.5/OdysseyEDIJAXB/src/com/locuslive/edi/edifact/d95b/coreor/.svn/tmp/entries' to '/Users/damianharvey/Sites/Odyssey3.5/OdysseyEDIJAXB/src/com/locuslive/edi/edifact/d95b/coreor/.svn/entries'
at org.tigris.subversion.javahl.JavaHLObjectFactory.throwException(JavaHLObjectFactory.java:777)
at org.tmatesoft.svn.core.javahl.SVNClientImpl.throwException(SVNClientImpl.java:1850)
at org.tmatesoft.svn.core.javahl.SVNClientImpl.cleanup(SVNClientImpl.java:863)
at org.tigris.subversion.svnclientadapter.javahl.AbstractJhlClientAdapter.cleanup(AbstractJhlClientAdapter.java:1958)
... 8 more
Caused by: org.tmatesoft.svn.core.SVNException: svn: Cannot rename file '/Users/damianharvey/Sites/Odyssey3.5/OdysseyEDIJAXB/src/com/locuslive/edi/edifact/d95b/coreor/.svn/tmp/entries' to '/Users/damianharvey/Sites/Odyssey3.5/OdysseyEDIJAXB/src/com/locuslive/edi/edifact/d95b/coreor/.svn/entries'
I'm running OSX Snow Leopard, Eclipse 3.5, Subclipse 1.6.5.
我正在运行OSX雪豹,Eclipse 3.5, Subclipse 1.6.5。
It looks like a permissions problem. If I list the directories in the error I get:
它看起来像权限问题。如果我在错误中列出目录,我得到:
drwxrwxrwx 8 damianharvey staff 272 19 Nov 17:43 .
drwxrwxrwx 16 damianharvey staff 544 21 Sep 14:53 ..
-r--r--r-- 1 damianharvey staff 2030 21 Sep 14:53 all-wcprops
-r--r--r-- 1 damianharvey staff 2313 21 Sep 14:53 entries
drwxrwxrwx 2 damianharvey staff 68 21 Sep 14:53 prop-base
drwxrwxrwx 2 damianharvey staff 68 21 Sep 14:53 props
drwxrwxrwx 15 damianharvey staff 510 21 Sep 14:53 text-base
drwxrwxrwx 6 damianharvey staff 204 19 Nov 17:19 tmp
So I assume that it's the read-only permissions that is preventing this. If I try to chmod this to a very broad 777:
我假设是只读权限阻止了这个。如果我试着把它变成一个非常宽泛的777
sudo chmod 777 /Users/damianharvey/Sites/Odyssey3.5/OdysseyEDIJAXB/src/com/locuslive/edi/edifact/d95b/coreor/.svn/entries
chmod: Unable to change file mode on /Users/damianharvey/Sites/Odyssey3.5/OdysseyEDIJAXB/src/com/locuslive/edi/edifact/d95b/coreor/.svn/entries: Operation not permitted
Any ideas? Would quite like to commit my code.
什么好主意吗?我很想提交我的代码。
Many Thanks.
多谢。
1 个解决方案
#1
35
No worries. Aunty Google found it for me
不用担心。谷歌阿姨为我找到的
chflags -R nouchg .
From the comments here:
从这里的评论:
If you're changing workspaces on OS X and you import an SVN-based project into your new workspace, some of your files may have the uchg flag set. SubClipse/SVN will not be able to update this project. You will get an error:
如果您在OS X上更改了工作空间,并将一个基于SVN的项目导入到新的工作空间中,那么您的一些文件可能会有uchg标志集。SubClipse/SVN将无法更新这个项目。你会得到一个错误:
svn: Cannot rename file
svn:不能重命名文件
every time you try invoke svn. If you issue:
每次尝试调用svn。如果你的问题:
chflags -R nouchg .
chflags - r nouchg。
at the top-level of the project directory this will clear these flags and restore SVN function.
在项目目录的顶层,这将清除这些标志并恢复SVN函数。
#1
35
No worries. Aunty Google found it for me
不用担心。谷歌阿姨为我找到的
chflags -R nouchg .
From the comments here:
从这里的评论:
If you're changing workspaces on OS X and you import an SVN-based project into your new workspace, some of your files may have the uchg flag set. SubClipse/SVN will not be able to update this project. You will get an error:
如果您在OS X上更改了工作空间,并将一个基于SVN的项目导入到新的工作空间中,那么您的一些文件可能会有uchg标志集。SubClipse/SVN将无法更新这个项目。你会得到一个错误:
svn: Cannot rename file
svn:不能重命名文件
every time you try invoke svn. If you issue:
每次尝试调用svn。如果你的问题:
chflags -R nouchg .
chflags - r nouchg。
at the top-level of the project directory this will clear these flags and restore SVN function.
在项目目录的顶层,这将清除这些标志并恢复SVN函数。