xcode configuration

¿Cómo hago que Xcode replique la estructura del grupo de proyectos en la estructura de carpetas del disco?



configuration (5)

Tengo un proyecto de Xcode con la siguiente estructura de grupo:

ProjectName/ Classes/ class1.h class1.m class2.h class2.m ... XMLDocs/ doc1.xml doc2.xml ... Resources/ Info.plist MainMenu.xib ...

y así sucesivamente y así sucesivamente.

Me gustaría que esto también se represente en la estructura de carpetas del disco:

ProjectFolder/ Project.xcodeproj Classes/ class1.h class1.m class2.h class2.m ... XMLDocs/ doc1.xml doc2.xml ... Resources/ Info.plist MainMenu.xib ...

a diferencia de todo lo habitual en la metodología de carpeta de proyecto raíz.

¿Hay alguna manera de hacer esto sin crear manualmente la estructura de la carpeta en el disco y luego tener que volver a marcar toda la referencia en Xcode a la nueva ubicación?

Puntos de bonificación si me puede decir cómo hacerlo automáticamente cada vez que creo un nuevo grupo o agrego archivos a un grupo existente en Xcode.


¡Puedes hacer esto hasta cierto punto! Solo hay un paso adicional para hacer cada vez que creas un nuevo grupo (¡y esta primera vez tendrás que ponerte al día!):

Siempre que cree un grupo en Xcode, selecciónelo de inmediato y abra la barra lateral derecha. Observe la configuración de "Ubicación:" justo debajo de su nombre. Haga clic en el icono de la carpeta al lado de "Ninguno" y configúrelo en una nueva carpeta con el mismo nombre.

Ahora, cada vez que agregue archivos al grupo, irán a la carpeta correspondiente del disco. ¡Cortejar!

Desafortunadamente, esta vez inicial, tendrás que mover mucho archivos para hacerlo. (Al cambiar las rutas de grupo, todos tus archivos se volverán rojos, ya que Xcode comenzará a buscarlos en la nueva carpeta. Tendrás que moverlos manualmente desde el Finder para arreglarlo). Sin embargo, hay un comando herramienta de línea para realizar esta migración inicial por usted: https://github.com/venmo/synx


No hay funcionalidad "hacer que mi disco se vea como estructura de mi proyecto" en Xcode.

Sin embargo, puede automatizar la tarea usando AppleScript: puede examinar y cambiar la estructura del proyecto desde un script. Por lo tanto, solo tendría que escribir un script que itere sobre la estructura del proyecto y haga que la jerarquía de carpetas se vea como lo hace la estructura del proyecto, y ajuste el punto donde las referencias del archivo y grupo de Xcode señalan al mismo tiempo.



Una referencia de carpeta es lo que quieres. Al arrastrar o agregar archivos al proyecto, hay una opción para "Crear referencias de carpetas para cualquier carpeta agregada". Elija eso y obtendrá el comportamiento que desea.

texto alternativo http://img.skitch.com/20081203-prtxsp7c36ern4afxxdixy93sq.png

Podría intentar agregar toda la carpeta adjunta del proyecto como una referencia de carpeta. Eso debería tener todo. O agregue referencias para "Clases", "Recursos" y "XML" individualmente.


Xcode9 resuelve este problema. De forma predeterminada, se crea un nuevo grupo con la carpeta correspondiente en el disco.