2010-09-23 41 views
6

我收到以下错误,如果我试图重命名我的课:Xcode和SVN:不能重命名我的班 - >错误:155007(Path是不是工作拷贝目录)

Error During Rename

Error: 155007 (Path is not a working copy directory) Description: Path 'xxx/Classes/MyClass.h' is not a directory

改名看起来像这样: MyClass.h - > MYClass.h

也许这就是问题所在?

我已经做了一个初始导入到我的SVN目录。这是迄今为止的工作(删除,提交等)唯一不能重命名的类。

我想:

4.Now delete your local copy (or move it to another location just in case).

5.Finally CHECKOUT the project from subversion (this will create the subversion .svn folders, …).

6.Reselect the subversion repository for this project.

7.Commit the entire project.

也有在SVN目录中没有build目录。突出的一点是我看不到任何.svn文件夹。我使用Xcode 3.2.3。我正在尝试重命名/重构的文件位于classes文件夹中。我试图从类文件夹中删除一个文件,它工作!我想读this我也发现了类似的problem。但目前尚无解决方案。

回答

7

我刚刚有同样的问题,谷歌指示我这个问题,所以迟到的'答案'道歉。无论如何,我正在使用eclipse 3.5,mac osx snow leopard,并且你似乎也在使用mac os x(xcode)?关键是,mac osx的hfs + -filesystem大部分时间都是不区分大小写的,所以既然你只是想改变你的文件名,这可能是你的问题。

对我来说,解决方法是从foo.h中进行重命名为foo.h中:

  • 了foo.h - > foobar.h中
  • foobar.h中 - > foo.h中

(NB目前,所有的文件重命名,其中仅情况的变化是给我的系统上同样的问题)

+0

更好的解决方案! – testing 2011-01-14 23:44:13

0

我不知道你的故障排除步骤(其中有1〜3步?),但是,假设:

  1. xxx/MyClass.h已经是版本控制之下
  2. 乳清你说“重命名类”你意味着“重命名文件”
  3. 你发出命令svn rename

...那么你的工作副本可能已损坏。我以前遇到过这个问题,并没有实际的解决方法。我建议你:

  1. 签出新的工作副本
  2. 复制挂起的更改(如果有的话)使用普通合并工具(如WinMergeTortoiseMerge),是extremelly小心这样你就不会复制任何.svn目录
  3. 提交
+0

步骤1和2都已经完成(创建Xcode项目和配置SVN)。第3步是导入,我也做了,但我不想做任何新的导入(我认为导入是成功的,问题在别处)。是的,我的意思是重命名文件(但实际上是重命名一个类)。我不发布'svn rename'命令。我认为这是由Xcode完成的,但我会尝试。我已经创建了五个新的工作副本,并且每次都有相同的结果(可能导入有问题,但是提交和删除工作?)。我一直担心我的.svn文件夹在哪里。 – testing 2010-09-23 11:58:07

+0

导入?我希望你正在创建一个新的*工作副本*而不是一个新的*库*。无论如何,确保Xcode支持SVN中的文件重命名。 – 2010-09-23 12:18:25

+0

没有进口!新的工作副本第十...如何找出Xcode支持什么?我经历过Xcode是**** – testing 2010-09-23 12:55:23

1

我认为这个问题是在这里MyClass.h - >MYClass.h看来,这不是supporte通过SVN或Xcode的d ...

选项1:没有重构

选项2:删除文件,并创建一个新的

我选择了第2位。我会尝试发布选项一条指令:

  1. Go to SCM > Repositories. Select only one file. Click the Delete button. Do this as often as you need.
  2. Go to your files in Xcode. Make your renaming/refactoring of the names in the files. Then copy content of your files temporary in TextEdit.
  3. Select the files you want to delete in Xcode. Right-Click > Delete.
  4. Create your new Class/Files and copy the content of TextEdit into these files.
  5. Go to SCM > SCM Results. Select all files (inclusive myProject.xcodeproj). Confirm add and delete of the files.
  6. Than make a commit of all changed files.
  7. Press the Reload button in the Repositories window to see if the files are there.

该过程看起来像上面描述的那样。让事情正确,我遇到了很多问题。我希望现在它是正确的。我认为上述说明并非100%正确,但我做了很多事情,这是我能记住的唯一事情。希望这会帮助别人。

PS:我认为添加/删除/重命名不应该在Xcode中完成。只有问题。

1

如果你不介意的命令行,可以解决与当地不区分大小写如erver端重命名:

svn rename repo-URL/FOO.bar repo-URL/foo.bar -m "FOO.bar rename to Foo.bar" 

仅供参考: svn move