我对使用Xcode很好奇。在复制项目所需的开源类文件时,我总是需要选择一个选项。选项为“创建组”和“创建文件夹引用”。我已经看过两者的区别了。但它根本不被理解。当我选择两个选项中的一个时,我从我的项目中删除了该文件,同时删除了开源类文件。我不想要。我想永远作为一个独立的文件存在。我该选什么?
72qzrwbm1#
我花了一段时间才明白这两个选项之间的区别,所以我想我应该分享:我写这篇文章的时候Xcode 12是当前版本最大的区别是如何从finder访问导入的文件夹/文件。假设你想导入一个新的文件夹到你的Xcode项目中。当你选择Create groups时,Xcode将导入你的新文件夹并创建一个组(黄色图标)。当你转到你的项目目录(使用Finder)时,你应该会看到一个名为与你刚刚导入的文件夹类似的文件夹,但是你通过Finder放入这个文件夹的任何其他文件在你的Xcode项目中都是不可见的。当你选择Create folder references时,导入的文件夹将在Xcode中有一个经典的蓝色文件夹图标。这个新文件夹在你进入你的项目目录时也是可见的,但是现在你放在那里的每个新文件也会出现在你的Xcode项目中。如果你想知道更多,请阅读此说明http://www.thomashanning.com/xcode-groups-folder-references/它非常简单易懂。
Create groups
Create folder references
wtlkbnrh2#
任何Xcode项目结构组织有两种类型:
*filesystem项目结构(可使用 * Finder.app * 检查)*IDE项目结构(可通过Xcode导航区的 Project Navigator 进行检查。)
Xcode依赖于文件系统的组织,它保持对“物理”文件或文件夹的引用。这就是为什么你可以将所有的类、图像、列表和项目的其他部分存储在同一个 * 文件夹 * 中,而对这些部分的 * 引用 * 在Xcode项目中被组织到各自的 * 组 * 中。当您创建一个组时,它会影响Xcode中项目的组织。当你用引用文件夹创建一个组时,它会同时创建Xcode项目中的一个组和文件系统中的一个文件夹。Xcode 9 it seems like, Apple enforces filesystem project structure to correspond to Xcode project structure。这意味着,你必须明确选择“新组没有文件夹”
hjzp0vay3#
已将Finder中的文件和文件夹添加到Xcode组中。Xcode 10.2.1.看看没有Copy items if needed的例子
Finder
Xcode
Copy items if needed
create groups和create folder references的常见行为1.从Finder重命名文件不会在Xcode中重命名文件,因此Xcode不会处理它,它会用红色标记它们。1.从Xcode重命名文件在Finder中重命名文件1.从Finder更改文件,在Xcode中更改文件,反之亦然1.从Xcode中删除文件以将其丢弃,在Finder中更改文件,反之亦然1.从Finder的文件夹添加文件不会将文件添加到Xcode的组
create groups
create folder references
create groups和create folder references的常见行为:1.重命名Xcode中的文件夹/组重命名Finder中的文件夹
如果选择create groups,则相应的文件夹将在项目导航器中显示一个黄色图标。
只是一个虚拟文件夹。在开发过程中,当您复制一个文件,而该文件尚未编译,并且您没有时间对其进行更改,并且只想检查项目是否工作时,它很有用。所以你可以从一个文件中删除一个引用。它不会从文件夹中删除,因此您可以再次添加此文件。1.在Finder中重命名文件夹不会在Xcode中重命名组的名称。您仍然可以使用组,但以前的内容虽然可见,但不可用1.将文件添加到Finder的文件夹不会将文件添加到Xcode的组1.将文件添加到Xcode中的组不会将文件添加到Finder中的文件夹1.删除Finder中的文件夹不会删除Xcode中的组。您仍然可以使用组,但以前的内容虽然可见,但不可用
如果选择create folder references,则该文件夹将在项目导航器中显示一个蓝色图标。
这是一个真实的的文件夹,任何变化都会反映出来1.在Finder中重命名文件夹不会在Xcode中重命名文件夹的名称。以前的内容已消失,您无法使用此文件夹1.将文件添加到Finder中的文件夹将文件添加到Xcode中的文件夹1.将文件添加到Xcode中的文件夹将文件添加到Finder中的文件夹1.删除Finder中的文件夹将删除Xcode中的文件夹。Copy items if needed(https://stackoverflow.com/a/57701037/4770877)
sd2nnvve4#
4条答案
按热度按时间72qzrwbm1#
我花了一段时间才明白这两个选项之间的区别,所以我想我应该分享:
我写这篇文章的时候Xcode 12是当前版本
最大的区别是如何从finder访问导入的文件夹/文件。假设你想导入一个新的文件夹到你的Xcode项目中。当你选择
Create groups
时,Xcode将导入你的新文件夹并创建一个组(黄色图标)。当你转到你的项目目录(使用Finder)时,你应该会看到一个名为与你刚刚导入的文件夹类似的文件夹,但是你通过Finder放入这个文件夹的任何其他文件在你的Xcode项目中都是不可见的。当你选择
Create folder references
时,导入的文件夹将在Xcode中有一个经典的蓝色文件夹图标。这个新文件夹在你进入你的项目目录时也是可见的,但是现在你放在那里的每个新文件也会出现在你的Xcode项目中。如果你想知道更多,请阅读此说明http://www.thomashanning.com/xcode-groups-folder-references/
它非常简单易懂。
wtlkbnrh2#
任何Xcode项目结构组织有两种类型:
*filesystem项目结构(可使用 * Finder.app * 检查)
*IDE项目结构(可通过Xcode导航区的 Project Navigator 进行检查。)
Xcode依赖于文件系统的组织,它保持对“物理”文件或文件夹的引用。这就是为什么你可以将所有的类、图像、列表和项目的其他部分存储在同一个 * 文件夹 * 中,而对这些部分的 * 引用 * 在Xcode项目中被组织到各自的 * 组 * 中。
当您创建一个组时,它会影响Xcode中项目的组织。当你用引用文件夹创建一个组时,它会同时创建Xcode项目中的一个组和文件系统中的一个文件夹。
Xcode 9 it seems like, Apple enforces filesystem project structure to correspond to Xcode project structure。这意味着,你必须明确选择“新组没有文件夹”
hjzp0vay3#
已将
Finder
中的文件和文件夹添加到Xcode
组中。Xcode 10.2.1.看看没有Copy items if needed
的例子文件
create groups
和create folder references
的常见行为1.从
Finder
重命名文件不会在Xcode
中重命名文件,因此Xcode不会处理它,它会用红色标记它们。1.从
Xcode
重命名文件在Finder
中重命名文件1.从
Finder
更改文件,在Xcode
中更改文件,反之亦然1.从
Xcode
中删除文件以将其丢弃,在Finder
中更改文件,反之亦然1.从
Finder
的文件夹添加文件不会将文件添加到Xcode
的组文件夹
create groups
和create folder references
的常见行为:1.重命名
Xcode
中的文件夹/组重命名Finder
中的文件夹create groups
如果选择
create groups
,则相应的文件夹将在项目导航器中显示一个黄色图标。只是一个虚拟文件夹。在开发过程中,当您复制一个文件,而该文件尚未编译,并且您没有时间对其进行更改,并且只想检查项目是否工作时,它很有用。所以你可以从一个文件中删除一个引用。它不会从文件夹中删除,因此您可以再次添加此文件。
1.在
Finder
中重命名文件夹不会在Xcode
中重命名组的名称。您仍然可以使用组,但以前的内容虽然可见,但不可用1.将文件添加到
Finder
的文件夹不会将文件添加到Xcode
的组1.将文件添加到
Xcode
中的组不会将文件添加到Finder
中的文件夹1.删除
Finder
中的文件夹不会删除Xcode
中的组。您仍然可以使用组,但以前的内容虽然可见,但不可用create folder references
如果选择
create folder references
,则该文件夹将在项目导航器中显示一个蓝色图标。这是一个真实的的文件夹,任何变化都会反映出来
1.在
Finder
中重命名文件夹不会在Xcode中重命名文件夹的名称。以前的内容已消失,您无法使用此文件夹1.将文件添加到
Finder
中的文件夹将文件添加到Xcode
中的文件夹1.将文件添加到
Xcode
中的文件夹将文件添加到Finder
中的文件夹1.删除
Finder
中的文件夹将删除Xcode
中的文件夹。Copy items if needed(https://stackoverflow.com/a/57701037/4770877)
sd2nnvve4#
创建文件夹引用:
创建群组: