【问题标题】:How to rename the folder name in xcode project with out corrupting the files如何在不损坏文件的情况下重命名 xcode 项目中的文件夹名称
【发布时间】:2012-04-17 21:17:46
【问题描述】:

在我的 xcode 项目中,我手动创建了一个名为 "MyClasses" 的文件夹,以将新添加的文件/类放置到此文件夹中。

现在我在这个文件夹中有近 30 个类。

当我重命名这个文件夹时,这个文件夹中的所有文件都被删除了。

现在我需要将文件夹重命名为“ViewControllerClasses”。

但我丢失了 30 个 .h、.m、xib 文件。 [幸运的是我有一个副本 & 和 zip 文件]

如何在不损坏文件的情况下重命名文件夹。

将其重命名为 myviewcontrollerclasswes

当我改名时

【问题讨论】:

  • 你想只在 xcode 中重命名文件夹,还是在 xcode 中重命名文件夹及其在硬盘中的位置(由 finder 显示)
  • 我想重命名它所在的地方,由finder显示
  • @Ranga 您在重命名文件夹之前是否关闭了 X 代码?
  • 是的,我做到了。关闭我的 xcode 后,我重命名了文件夹的名称
  • 现在在 XCODE 中实现了自动化 .. stackoverflow.com/questions/17744319/…

标签: iphone objective-c ios xcode ios4


【解决方案1】:

注意截至 2017 年: 现在 Xcode 9 会自动同步文件夹和项目层次结构。

注意截至 2013 年: Duplicate and rename Xcode project & associated folders


您在项目文件下的 XCode 中看到的“文件夹”不是文件系统中的真实文件夹,只是 .xcodeproj 文件中管理的虚拟文件夹。您可以独立于文件系统中的位置来组织项目文件夹中的文件。有些人喜欢将文件系统文件夹结构映射到项目文件夹结构中,而另一些人则将所有源文件存储在文件系统的一个大文件夹中,并仅在项目文件夹中组织它们:这是一个偏好问题。

但是,如果您在文件系统中重命名/移动物理文件,您将不得不删除它们并将它们重新添加到您的项目中,因为 XCode 不知道在哪里可以找到它们。注意不要在物理上删除它们只从 XCode 项目中删除它们,然后重新添加它们并根据需要重新组织。

还有一点需要注意:如果您使用的是版本控制系统,您还必须通知其客户端(最有可能是 svn 或 git)您已重命名/移动了文件。如果您想保留文件修订历史记录,最好向版本控制明确发出复制/移动命令,否则它会将您的文件视为从旧位置删除并在新位置添加为新文件。

【讨论】:

  • +1 获取有关版本控制的提示!关于在文件系统中物理重命名文件夹后删除和重新添加组:我不确定其他版本,但在 Xcode 4.2 中这不是必需的。您可以在 Xcode 中选择组,显示 File Inspector(键盘快捷键 Option+Command+1),然后在 File Inspector 窗口中单击“Path”组合框下方的小按钮。这将弹出一个文件对话框,您可以在其中选择该组所代表的文件夹。
  • 很好,我不知道这个。我在上面的答案中并不完全准确,因为也可以在项目文件夹中创建直接映射文件系统中的文件夹的组,并且它们的内容将自动同步。如果我没记错的话,它们在 XCode 中有蓝色文件夹图标。然而,它们大多仅用于资源。
  • 你会认为苹果的4.6.2版本会解决这个可耻的系统
  • 这不再是 100% 正确的。现在 xcode 9 可以在文件系统中创建带有真实文件夹的文件夹。
  • 谢谢@Stephan,我添加了对旧答案的更新。
【解决方案2】:

您应该只对项目文件进行搜索和替换(如果您正在使用版本控制并且与其他开发人员一起工作,那么您肯定会经常看到这个文件),它是位于 xxxxxxxx 内的 project.pbxproj 文件.xcodeproj 文件。

只需右键单击(Control + 单击)文件并选择“显示包内容”即可找到 xcodeproj 文件。

【讨论】:

  • Dan - 非常棒的提示,谢谢。我相信该文件实际上可能是今天的“UserInterfaceState.xcuserstate”。我为将来的读者编辑了一些长说明。再次感谢伙计,圣诞快乐。
【解决方案3】:

两种解决方案

方法_1。尝试手动编辑:

  « Drag your MedChart.xcodeproj to TextWrangler  (or any text editor) 

  « Use find button to find "FolderName" (Your folder name) 

  « Replace all with new name.

  « In some project you may notice header search path problem...goto header search path and replace with new name.

方法_2。使用 Xcode 选择基本文件夹:

在 finder 中重命名文件夹,然后使用 Xcode 选择相同的文件夹。

【讨论】:

  • 如果使用git,如何保存文件git status history?
【解决方案4】:

如果有人仍然遇到此问题:

  1. 在 XCode 左侧栏中选择与您要重命名的文件夹相对应的文件夹或文件(对我来说,我重命名了包含我所有文件的文件夹,因此我选择了最顶层的文件夹)
  2. 在右侧栏的“位置”下方,点击文件夹图标。
  3. 在打开的文件资源管理器中,将现有文件夹重命名为您想要的任何名称,然后选择它并按“确定”。
  4. XCode 应该相应地更新文件位置。

请记住,如果您重命名包含在构建设置中硬编码为特定路径的文件的内容,XCode 将引发错误。您必须在构建设置中手动更改这些路径。

这对我有用,希望它也对你有用。

【讨论】:

  • 这是一个比公认的更好的答案。您不必手动删除和添加所有文件。但是请务必更新 info.plist 的路径。
【解决方案5】:

我仍然发现比所有这些方法更容易在文件导航器中创建一个新文件夹,然后将文件从另一个文件夹拖到其中。有时最简单的方法是最好的方法。它确实需要我 10 秒,而且我不需要离开 Xcode。

【讨论】:

    猜你喜欢
    • 2016-02-23
    • 1970-01-01
    • 2021-05-26
    • 2012-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-22
    • 2021-11-02
    相关资源
    最近更新 更多