xcode - 复制并重命名 Xcode 项目及关联文件夹

标签 xcode project-management

我希望能够复制整个 Xcode 项目、重命名项目和关联文件,而无需 Xcode 进行思考,并且无需手动将所有文件重新导入到项目中。

最佳答案

这个答案是互联网上各种其他 StackOverflow 帖子和教程的结晶,这些帖子和教程被汇集到一个地方,供我将来引用,并帮助其他可能面临同样问题的人。最后,所有其他答案均归于功劳。

复制 Xcode 项目

  1. 在 Finder 中,将项目文件夹复制到新项目的所需位置。在此阶段请勿重命名 .xcodeproj 文件名或任何关联的文件夹。

  2. 在 Xcode 中,重命名该项目。从导航器 Pane (左 Pane )中选择您的项目。在实用程序 Pane (右 Pane )中重命名您的项目,接受 Xcode 建议的更改。

  3. 在 Xcode 中,在“管理方案”中重命名方案,同时重命名您可能拥有的任何目标。

  4. 如果您没有使用末尾包含当前 PRODUCT_NAME 的默认 bundle 标识符(因此会自动更新),请将您的 bundle 标识符更改为新的 bundle 标识符用于您的复制项目。

重命名源文件夹

因此,在执行上述步骤后,您应该有一个复制并重命名的 Xcode 项目,该项目应该成功构建和编译,但是您的源代码文件夹仍将按照原始项目中的名称命名。这不会导致任何编译器问题,但它不是人们在 SCM 等中导航的最清晰的文件结构。要重命名此文件夹而不破坏所有文件链接,请按照下列步骤操作:

  1. 在 Finder 中,重命名源文件夹。这会破坏您的项目,因为 Xcode 不会自动检测更改。您的所有 Xcode 文件列表都将失去与实际文件的链接,因此将全部变为红色。 注意:您可能需要先执行第 2 步,然后再返回此步骤。

  2. 在 Xcode 中,单击您重命名的虚拟文件夹(这可能位于顶部,就在您的实际 .xcodeproject 下方)重命名该文件夹以匹配 Finder 中的名称,这不会解决任何问题,严格来说也不是必需的步骤,但文件名匹配很好。

  3. 在 Xcode 中,在导航 Pane 中选择您刚刚重命名的文件夹。然后在“实用程序” Pane (最右侧)中,单击“位置”下拉菜单下方看起来像深灰色文件夹的图标。从这里,导航到查找器中重命名的文件夹,然后单击“选择”。这将自动重新关联您的所有文件,并且它们不应再在 Xcode 导航 Pane 中显示为红色。

Icon to click

  • 在您的项目/目标build设置中,搜索旧文件夹名称并手动重命名您找到的任何实例。通常有一个用于 prefix.pch,一个用于 Info.plist,但可能还有更多。

  • 如果您使用任何第三方库(Testflight/Hockeyapp/等),您还需要搜索“库搜索路径”并在此处重命名任何出现的旧文件名。

  • 对项目可能包含的任何单元测试源代码文件夹重复此过程,过程是相同的。

  • 这应该允许您复制和重命名 Xcode 项目以及所有关联的文件,而无需手动编辑任何 Xcode 文件,并且冒着搞砸事情的风险。

    制作人员

    非常感谢Nick Lockwood ,和 Pauly Glott为这个问题提供单独的答案。

    关于xcode - 复制并重命名 Xcode 项目及关联文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17744319/

    相关文章:

    java - 一个优秀的Java开源项目版本控制、项目管理和托管团队

    project-management - 一款在线项目管理软件

    ios - Xcode 7 + canOpenURL,如何让Facebook和Twitter打开我自己的应用链接

    Xcode重新打开项目后自行改变布局的约束

    iphone - 从 UIPageViewController 卸载 viewController

    project-management - 软件项目的基础设施

    project-management - 什么是解释邪恶问题概念的好比喻?

    project-management - 对于敏捷方法,您推荐什么项目管理软件?

    objective-c - Xcode 12,如何在整个项目中抑制 "Double-quoted include in framework header"警告

    xcode - 如何解决错误 "' Cordova/CDVPlugin.h' 文件未找到”(在 Azure DevOps Xcode 构建步骤期间)?