2010-09-23 11 views
6

me sale el siguiente error, si trato de cambiar el nombre de mi clase:Xcode y SVN: No se puede cambiar el nombre de mi clase -> error: 155007 (ruta no es un directorio de copia de trabajo)

Error During Rename

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

El cambio de nombre se ve así: MyClass.h -> MYClass.h

Quizás ese es el problema?

He hecho una importación inicial a mi directorio SVN. Esto está funcionando hasta el momento (eliminar, confirmar, etc.) Lo único que no puede es cambiar el nombre de una clase.

me trataron:

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.

Tampoco hay build directorio en el directorio SVN. Lo único que destaca es que no puedo ver ninguna carpeta .svn. Estoy usando Xcode 3.2.3. El archivo que intento cambiar el nombre/refactor está en la carpeta de clases. ¡Intenté eliminar un archivo de la carpeta de clases y funcionó!

Leo this. También encontré un problem similar. Pero no hay una solución disponible hasta ahora.

Respuesta

7

Acabo de tener el mismo problema y Google me dirigió a esta pregunta, así que me disculpo por la última 'respuesta'.

De todos modos, estoy trabajando en eclipse 3.5, mac osx snow leopard, ¿y parece que también está trabajando en mac os x (xcode)? El punto es que mac osx 'hfs + -filesystem es la mayoría de las veces sin distinción de mayúsculas y minúsculas, por lo que, dado que solo está tratando de cambiar el caso de sus nombres de archivos, este podría ser su problema.

La solución para mí fue para llevar a cabo el cambio de nombre de foo.h a foo.h como:

  • foo.h -> FooBar.h
  • FooBar.h -> foo.h

(NB Actualmente, todos los archivos cambia el nombre en el que sólo los casos de cambios están dando el mismo problema en mi sistema)

+0

¡Una solución mucho más agradable! – testing

0

no estoy seguro sobre sus pasos para solucionar problemas (donde están los pasos 1 a 3?), Pero, suponiendo que:

  1. xxx/MyClass.h ya está bajo control de versiones
  2. de suero de leche se dice "Cambiar nombre de clase" se significa "cambiar el nombre de archivo"
  3. Usted está emitiendo un comando svn rename

... entonces su copia de trabajo es probablemente corrupto. He sufrido ese problema antes y no hay una solución real. Le sugiero:

  1. obtiene una copia de trabajo nueva
  2. Copiar cambios pendientes (si los hay) utilizando una herramienta de combinación regular (como WinMerge o TortoiseMerge), siendo extremadamente cuidadosos para que no copian cualquier directorio .svn
  3. Commit
+0

Paso 1 y 2 ya están hechos (crear proyecto Xcode y configurar SVN). El paso 3 es la importación, que también he hecho, pero aún no quiero hacer ninguna importación nueva (creo que la importación fue exitosa y el problema está en otra parte). Sí, me refiero a cambiar el nombre de los archivos (pero en realidad se trata de cambiar el nombre de una clase). No estoy emitiendo un comando 'svn rename'. Creo que Xcode lo hace, pero intentaré eso. Ya hice cinco copias de trabajo nuevas y cada vez es el mismo resultado (tal vez haya un problema con la importación, pero la tarea de confirmar y eliminar funciona). Me estoy preocupando todo el tiempo, donde están mis carpetas .svn. – testing

+0

Importar? Espero que esté creando una nueva * copia de trabajo * y no un nuevo * repositorio *. Lo que sea, asegúrese de que Xcode admita el cambio de nombre de archivos en SVN. –

+0

¡Sin importar! Copia de trabajo fresca el décimo ... ¿Cómo averiguo qué es compatible con Xcode y qué no? Experimenté que Xcode es **** – testing

1

Creo que el problema es que aquí MyClass.h ->MyClass.h parece que esto no es supporte d por el SVN o Xcode ...

Opción 1: No se refactorización

Opción 2: Eliminar el archivo y crear uno nuevo

he elegido la opción Nº 2. Voy a tratar de publicar una instrucción:

  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.

El proceso es así como se ha descrito anteriormente. Tuve muchos problemas para hacer las cosas bien. Espero que ahora sea correcto. Creo que las instrucciones anteriores no son 100% correctas, pero he hecho tantas cosas que esto es lo único que puedo recordar. Espero que esto ayude a alguien más.

PD: Creo que agregar/borrar/renombrar no se debe hacer en Xcode. Solo problemas

1

Si no te importa ir a la línea de comandos, se puede trabajar alrededor de mayúsculas y minúsculas local con como Cambiar nombre del lado erver:

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

Sólo como referencia: svn move

Cuestiones relacionadas