我有一个具有以下组结构的Xcode项目:
ProjectName/
Classes/
class1.h
class1.m
class2.h
class2.m
...
XMLDocs/
doc1.xml
doc2.xml
...
Resources/
Info.plist
MainMenu.xib
...
依此类推。
我希望它也能在磁盘上的文件夹结构中表示:
ProjectFolder/
Project.xcodeproj
Classes/
class1.h
class1.m
class2.h
class2.m
...
XMLDocs/
doc1.xml
doc2.xml
...
Resources/
Info.plist
MainMenu.xib
...
与根项目文件夹方法中的常规内容相反。
有没有办法在没有手动创建磁盘上的文件夹结构然后将Xcode中的所有引用重新指向新位置的情况下执行此操作?
如果您可以在我创建新组或将文件添加到Xcode中的现有组时自动告诉我如何自动执行此操作,那么
奖励积分。
答案 0 :(得分:59)
你可以在某种程度上做到这一点!每次创建一个新组时都只需要一个额外的步骤(这是你第一次有很多事情要做!):
每当您在Xcode中创建一个组时,请立即选择它并打开右侧边栏。请注意其名称下方的“位置:”设置。单击“无”旁边的文件夹图标,并将其设置为具有相同名称的新文件夹。
现在,无论何时向组中添加文件,它们都将转到磁盘上的相应文件夹。宇!
不幸的是,在这个初始阶段,你将有很多文件移动要做。 (当您更改组路径时,您的文件将全部变为红色,因为Xcode将开始在新文件夹中查找它们。您必须从Finder手动移动它们才能修复它。)但是,有一个命令-line工具为您执行此初始迁移:https://github.com/venmo/synx
答案 1 :(得分:11)
您想要的文件夹参考。将文件拖放或添加到项目时,可以选择“为任何添加的文件夹创建文件夹引用”。选择那个,你就会得到你想要的行为。
alt text http://img.skitch.com/20081203-prtxsp7c36ern4afxxdixy93sq.png
您可以尝试将项目的整个封闭文件夹添加为文件夹引用。这应该得到一切。或者单独添加“类”“资源”和“XML”的引用。
答案 2 :(得分:1)
Xcode9解决了这个问题。默认情况下,会在磁盘上创建一个包含相应文件夹的新组。
答案 3 :(得分:0)
Xcode中没有“让我的磁盘看起来像我的项目结构”功能。
您可以使用AppleScript自动完成任务:您可以从脚本中检查和更改项目结构。因此,您只需编写一个迭代项目结构的脚本,并使文件夹层次结构看起来与项目结构的方式相同,并调整Xcode的文件和组引用同时指向的位置。
答案 4 :(得分:0)
我发现,如果您在Xcode中移动文件并同时按[CMD],则文件夹结构将与Xcode结构匹配。
答案 5 :(得分:0)
我创建了一个应用程序来解决这个问题并重新组织您的文件结构以匹配您在 Xcode 中的内容。 https://apps.apple.com/gb/app/xsaviour/id1449886415?mt=12