当我创建一个新项目时,Xcode 4 的 Project Navigator 中的“M”和“A”图标是啥意思?

Posted

技术标签:

【中文标题】当我创建一个新项目时,Xcode 4 的 Project Navigator 中的“M”和“A”图标是啥意思?【英文标题】:What do the "M" and "A" icons in the Project Navigator of Xcode 4 mean when I create a new project?当我创建一个新项目时,Xcode 4 的 Project Navigator 中的“M”和“A”图标是什么意思? 【发布时间】:2012-02-10 10:19:51 【问题描述】:

Xcode 4 在项目导航器中的文件旁边显示灰色的“M”和“A”图标。我相信它们与源代码控制有关。

重点是:我在 Xcode 4 中打开和编辑的所有旧 Xcode 3 项目都不显示这些图标!我在 Xcode 4 中创建的新项目也不受源代码控制。

当我创建项目时,我取消了“Git”选项。但是 Xcode 在单击文件时仍会在检查器中向我显示“源代码管理”信息。最初由项目模板创建的所有文件都标记为“已提交”,而我自己添加的所有文件都没有。所以要么 Xcode 忽略了我不使用 Git 的愿望,要么它是一个错误,或者两者兼而有之。

更新:有些人建议删除 .git 文件夹。由于它以点开头,因此它可能是一个隐藏文件夹,因此我在终端中使用此技巧使隐藏文件在 Finder 中可见:

defaults write com.apple.finder AppleShowAllFiles TRUE
killall Finder

但是,我的项目文件夹中似乎没有 .Git 文件夹(检查了所有包含文件夹)。但是,即使 Git 复选框被禁用,Xcode 仍将我的新项目置于源代码控制之下。

如果我还不想使用源代码管理,我该如何摆脱它?

【问题讨论】:

***.com/a/16670942/1405155 【参考方案1】:

很高兴有人能澄清不同源代码控制状态的含义。

现在,具体到您关于“!”的问题标识符,很可能您已将文件移到 Xcode 之外。因此,即使它们没有“丢失”,它们也会被 Xcode 识别为在没有权限的情况下进行了更改。

要让 Xcode 接受更改的源文件,请执行提交。但是,Xcode 不会特别选择标有 !提交。您会注意到所有文件的左侧都有一个可用的复选框。如果您确实打算在 Xcode 之外更改文件,请选择这些文件并提交它们。你会发现!符号随后被删除。

【讨论】:

【参考方案2】:

那些字符指的是源代码管理。

? - 未版本化 M - 修改 A - 添加 A+ - 移动/重命名 U - 源代码管理中文件的较新版本 I - 项目被忽略(例如,使用 svn:ignore 属性)。 ! - 项目丢失(例如,您在不使用 svn 的情况下移动或删除了它)。这也表明目录不完整(结帐或更新被中断)。

参考:http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.status.html

【讨论】:

什么是“!”什么意思? 我还是没有看到答案。 对不起,我以为是“我”。为了 ! --> 项目丢失(例如,您在不使用 svn 的情况下移动或删除了它)。这也表明目录不完整(签出或更新被中断)。 @byJeevan 第一个是内容,第二个是属性。因此您的内容及其属性已被修改。 @MoinShirazi 您会在答案中提供指向文档的链接吗?毫无疑问,您的信息最丰富。【参考方案3】:

这取自Sam's Book。我无法在 Xcode 文档中查找信息。

【讨论】:

【参考方案4】:

Xcode 中文件旁边的“M”或“A”等标签表明您的项目位于 SVN/GIT 存储库下“M”表示文件修改的内容,而“A”表示文件添加

建议将您的项目保留在 SVN/GIT 规定下。

【讨论】:

【参考方案5】:

无论版本控制与否,XCode 4.5 中的图标始终存在

【讨论】:

【参考方案6】:

而且如果你使用subversion,这当然是相关的,所以删除.svn目录

【讨论】:

【参考方案7】:

就像其他开发人员指出的那样,这些图标代表受源代码控制的添加/修改文件。

如果您在创建新项目时遇到即使没有选中“Git”复选框也会出现这些图标,并且如果您确定您的项目没有真正受到源代码控制,那么只需执行以下操作:

重新启动 Xcode,您的项目问题就消失了。图标消失了,一切都很好:-)

这是一个奇怪的 Xcode 错误。

【讨论】:

如果重启不起作用。假设 你不是,重复不 实际上使用 XCode 中的源代码控制。突出显示项目导航器中的所有内容,菜单 File -> 并尝试 RefreshStatus 甚至 MarkAsResovled。其中之一将清除标志指示器。【参考方案8】:

正如其他人所说,它们与源代码控制有关。如果您确定项目中没有出现 .git 或 .svn 目录并且它们仍然显示,那么这只是 Xcode 错误。忽略它或向 Apple 提交错误。

顺便说一句,您应该使用源代码管理。

【讨论】:

我讨厌开始源代码控制赞成/反对讨论。但是,当您创建一个简单的测试项目只是为了快速尝试一些新东西时,必须无所事事地处理所有这些额外的臃肿,这很烦人。 Xcode 是否有可能在我的项目文件夹之外的某处创建 .git 存储库文件夹? 如果它只是一个快速测试项目,那么你是对的——你不需要源代码控制。但是,不,我认为 git 不可能在您的项目文件夹之外创建文件夹。请记住,如果 Xcode 没有创建***目录,您最终可能会得到一个嵌套的项目文件夹。也就是说,如果您创建一个名为 test 的文件夹,然后在那里创建一个名为 test 的项目,您将获得 test/test 并且 .git 将位于二级文件夹中。【参考方案9】:

我猜您在创建项目时选择了创建本地 git 存储库。它们确实与源代码控制有关,它们的意思是“修改”和“添加”。它们没有为您的旧项目显示的原因是因为您没有对它们使用源代码控制,但就像我说的,我认为您在创建项目时选择了创建本地 git 存储库。

【讨论】:

绝对不是。我又检查了两次并创建了新项目,确保未选中 Git 复选框。 Xcode 忽略了这一点。【参考方案10】:

“M”代表“修改”,“A”代表添加。这些值反映了文件的版本控制状态

【讨论】:

【参考方案11】:

是的,它与源代码控制有关。

“M”表示自上次提交后文件已被修改,“A”表示自上次提交后已添加文件。

如果您使用的是 git,则可以通过删除项目文件夹中的 .git 目录来移除源代码控制。

【讨论】:

我没有使用任何类型的源代码管理。我在创建项目时明确禁用了它。

以上是关于当我创建一个新项目时,Xcode 4 的 Project Navigator 中的“M”和“A”图标是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章

在 Xcode 4.2 上打开 Xcode 4.5 项目时出错

当我在 xcode 5 中打开我的 xcode 4.5 项目时收到警告

Xcode 11 beta 和 Mac OS Mojave:当我尝试创建一个新项目和/或打开现有项目时,它会因错误而关闭

如何在 XCode 4.5 中更改产品名称?

在所有 Xcode 11 项目上安装 pod 时出错

react-native-Cocoapods-Swift-Project