¿Cómo cambio por completo el nombre de un proyecto de Xcode (es decir, incluidas las carpetas)?

Tengo un proyecto llamado XXX . Quiero cambiar el nombre de este proyecto a YYY .

Tenga en cuenta que XXX es un término extremadamente común (por ejemplo, “datos”, o simplemente “proyecto”), y por lo tanto no es posible realizar un simple registro y reemplazo de RegEx, sin riesgo de corromper los archivos de configuración del proyecto.

Mi directorio de proyecto actual contiene los siguientes elementos:

  • XXX
  • XXXTests
  • XXX.xcodeproj

y quiero cambiarles el nombre a:

  • YYY
  • YYYTests
  • YYY.xcodeproj

… respectivamente, con los cambios necesarios reflejados en mi archivo de proyecto.

¿Cómo puedo lograr esto sin tener que crear manualmente y completar un nuevo proyecto?


Edit: es absolutamente ridículo que esta se haya convertido en mi pregunta más votada: p

Paso 1: renombrar el proyecto

  1. Haga clic en el proyecto que desea cambiar de nombre en el “Navegador de proyectos” a la izquierda de la vista de Xcode.
  2. A la derecha, seleccione “Inspector de archivos” y el nombre de su proyecto debe estar debajo de “Identidad y tipo”, cámbielo al nuevo nombre.
  3. Haga clic en “Cambiar nombre” en un menú desplegable

Paso 2: renombrar el esquema

  1. En la barra superior (cerca del botón “Parar”), hay un esquema para su producto VIEJO, haga clic en él, luego vaya a “Administrar esquemas”
  2. Haga clic en el nombre VIEJO en el esquema, y ​​será editable, cambie el nombre

Paso 3: renombra la carpeta con tus activos

  1. Salir de Xcode
  2. En la carpeta maestra correctamente nombrada, hay un archivo xcodeproj recién nombrado con la carpeta OLD incorrectamente nombrada. Cambie el nombre de la carpeta VIEJA a su nuevo nombre
  3. Vuelva a abrir el proyecto, verá una advertencia: “La carpeta VIEJA no existe”, desestime la advertencia.
  4. En el “Navegador de proyectos” a la izquierda, haga clic en el nombre de la carpeta OLD de nivel superior
  5. En el panel Utilidades debajo de “Identidad y tipo” verá la entrada “Nombre”, cambie esto del VIEJO al nuevo nombre
  6. Justo debajo hay una entrada de “Ubicación”. Haga clic en una carpeta con el nombre VIEJO y elija la carpeta recientemente renombrada

Paso 4: renombrar los datos de Build plist **

  1. Haga clic en el proyecto en el “Navegador de proyectos” a la izquierda, en el panel principal seleccione “Configuraciones de comstackción”
  2. Busque “plist” en esta sección
  3. En el paquete, verá Info.plist y el Product bundle identifier
  4. Cambie el nombre de la entrada superior en Info.plist
  5. Haz lo mismo con el Product Identifier

Finalmente , has terminado y puedes reconstruir ( Command + Shift + K para limpiar, Command + B para comstackr)

Para agregar a la excelente respuesta de @ luke-west:

Cuando se usa CocoaPods

Después del paso 2:

  1. Salga de XCode.
  2. En la carpeta maestra, cambie el nombre de OLD.xcworkspace a NEW.xcworkspace .

Después del paso 4:

  1. En XCode: elija y edite Podfile desde el navegador del proyecto. Debería ver una cláusula de target con el nombre VIEJO. Cambiarlo a NUEVO.
  2. Salga de XCode.
  3. En la carpeta del proyecto, elimine el archivo OLD.podspec .
  4. rm -rf Pods/
  5. Ejecutar la pod install .
  6. Abre XCode.
  7. Haga clic en el nombre de su proyecto en el navegador del proyecto.
  8. En el panel principal, cambie a la pestaña Build Phases .
  9. En Link Binary With Libraries , busque libPods-OLD.a y elimínelo.
  10. Si tiene un encabezado Bridging objective c, vaya a Configuración de comstackción y cambie la ubicación del encabezado de OLD / OLD-Bridging-Header.h a NEW / NEW-Bridging-Header.h
  11. Limpia y corre.

Una solución más rápida usando comandos de shell (también funciona con CocoaPods):

FAVOR DE LLAMAR A UN REPOSITORIO NO GIT ANTES DE CONTINUAR ⚠️

Paso 1 – Prerrequisitos

  1. Copie su carpeta de proyecto original a un archivo temporal /NewProjectFolder FUERA de su repository de git. Changes️ los cambios a .git podrían dañar tu índice git 💥 ☠

Paso 2 – Abrir la Terminal

Ahora vamos a cambiar el nombre del proyecto de oldName a NewProject .

  • Cierre XCode.
  • Vaya a su /NewProjectFolder .
 cd /Path/to/your/NewProjectFolder 
  • Instale las herramientas adicionales necesarias.
 brew install rename ack 
  • Cambie el nombre de los archivos y directorios que contienen la cadena fuente. Tendrá que ejecutar este comando dos veces , porque los directorios se renombrarán primero, luego se cambiarán los nombres de los archivos y directorios en la siguiente iteración.
 find . -name 'oldName*' -print0 | xargs -0 rename --subst-all 'oldName' 'NewProject' 
  • Compruebe si se renombran todos los archivos que contienen la cadena fuente. Deberías ver salida vacía.
 find . -name 'oldName*' 
  • Reemplace todas las ocurrencias de la cadena en todos los archivos.
 ack --literal --files-with-matches 'oldName' --print0 | xargs -0 sed -i '' 's/oldName/NewProject/g' 
  • Verifique si todas las ocurrencias de la cadena en todos los archivos fueron reemplazadas. Deberías ver salida vacía.
 ack --literal 'oldName' 
  • Ejecutar pod install
  • Agregue NewProjectFolder a su repository.
  • ¡Estás listo!

Para cambiar el nombre del proyecto;

  1. Seleccione su proyecto en el navegador del proyecto.

2.En la sección Identidad y Tipo del inspector de archivos, ingrese un nuevo nombre en el campo Nombre.

3. Presione Retorno.

Se muestra un cuadro de diálogo que enumera los elementos de su proyecto que pueden renombrarse. El diálogo incluye una vista previa de cómo aparecerán los elementos después del cambio.

  1. Para cambiar el nombre de los elementos, desactive las casillas de verificación de los elementos que no desea cambiar de nombre. Para cambiar el nombre solo de su aplicación, deje la aplicación seleccionada y anule la selección de todos los demás elementos.

  2. Presiona “Cambiar nombre”

Hay un proyecto de GitHub llamado Xcode Project Renamer :

Debe ejecutarse desde la raíz del directorio del proyecto de Xcode y ejecutarse con dos parámetros de cadena: $ OLD_PROJECT_NAME y $ NEW_PROJECT_NAME

El script recorre todos los archivos y directorios recursivamente, incluido el proyecto Xcode o el archivo del área de trabajo y reemplaza todas las ocurrencias de la cadena $ OLD_PROJECT_NAME con la cadena $ NEW_PROJECT_NAME (tanto en el nombre como en el contenido de cada archivo).

Xcode Project Renamer

Instrucciones adicionales al seguir las soluciones @ Luke-West’s + @ Vaiden:

  • Si su esquema no ha cambiado (sigue mostrando mi mac) en la parte superior izquierda junto al botón de detener:

    1. Haga clic en Nombre del proyecto RECIENTEMENTE creado (al lado del botón detener)> Haga clic en Editar esquemas> Generar (lado izquierdo)> Eliminar el objective anterior (dirá que falta) y reemplácelo por el proyecto RECIENTEMENTE nombrado bajo el logotipo del proyecto RECIENTEMENTE nombrado

Además, no tuve que usar el paso 3 de la solución de @Vaiden. Simplemente ejecutando rm -rf Pods/ in terminal eliminó todos los viejos archivos de pod

Tampoco tuve que usar el paso 9 en la solución de @Vaiden, sino que simplemente eliminé el proyecto VIEJO denominado framework en Link Binary Libraries (el framework RECIENTEMENTE nombrado ya estaba allí)

Entonces, los pasos actualizados serían los siguientes:

Paso 1: renombrar el proyecto

  1. Haga clic en el proyecto que desea cambiar de nombre en el “Navegador de proyectos” a la izquierda de la vista de Xcode.
  2. A la derecha, seleccione “Inspector de archivos” y el nombre de su proyecto debe estar debajo de “Identidad y tipo”, cámbielo al nuevo nombre.
  3. Haga clic en “Cambiar nombre” en un menú desplegable

Paso 2: renombrar el esquema

  1. En la barra superior (cerca del botón “Parar”), hay un esquema para su producto VIEJO, haga clic en él, luego vaya a “Administrar esquemas”
  2. Haga clic en el nombre VIEJO en el esquema, y ​​será editable, cambie el nombre
  3. Salga de XCode.
  4. En la carpeta maestra, cambie el nombre de OLD.xcworkspace a NEW.xcworkspace.

Paso 3: renombra la carpeta con tus activos

  1. Salir de Xcode
  2. En la carpeta maestra correctamente nombrada, hay un archivo xcodeproj recién nombrado con la carpeta OLD incorrectamente nombrada. Cambie el nombre de la carpeta VIEJA a su nuevo nombre
  3. Vuelva a abrir el proyecto, verá una advertencia: “La carpeta VIEJA no existe”, desestime la advertencia.
  4. En el “Navegador de proyectos” a la izquierda, haga clic en el nombre de la carpeta OLD de nivel superior
  5. En el panel Utilidades debajo de “Identidad y tipo” verá la entrada “Nombre”, cambie esto del VIEJO al nuevo nombre
  6. Justo debajo hay una entrada de “Ubicación”. Haga clic en una carpeta con el nombre VIEJO y elija la carpeta recientemente renombrada

Paso 4: renombra los datos de Build plist

  1. Haga clic en el proyecto en el “Navegador de proyectos” a la izquierda, en el panel principal seleccione “Configuraciones de comstackción”
  2. Busque “plist” en esta sección En el empaquetado, verá Info.plist y el identificador del paquete de productos.
  3. Cambie el nombre de la entrada superior en Info.plist
  4. Haz lo mismo con el identificador de producto

Paso 5 Manejo de Podfile

  1. En XCode: elija y edite Podfile desde el navegador del proyecto. Debería ver una cláusula de destino con el nombre VIEJO. Cambiarlo a NUEVO.
  2. Salga de XCode.
  3. En la terminal, cd en el directorio del proyecto, luego: rm -rf Pods/
  4. Ejecutar la instalación de pod.
  5. Abre XCode.
  6. Haga clic en el nombre de su proyecto en el navegador del proyecto.
  7. En el panel principal, cambie a la pestaña Crear fases. En Link Binary With Libraries, busque el marco OLD y quítelo (debería decir que falta). El framework NEWLY named ya debería estar allí, si no, use el botón “+” en la parte inferior de la ventana para agregarlo.
  8. Si tiene un encabezado Bridging objective c, vaya a Configuración de comstackción y cambie la ubicación del encabezado de OLD / OLD-Bridging-Header.h a NEW / NEW-Bridging-Header.h
  9. Limpia y corre.

Debería poder comstackr sin errores después de haber seguido todos los pasos con éxito