我创建了一个新项目并添加了一个文件 AppConstans.h 然后,git diff 和我看到下一个变化:
C856C0AC1C4F4B9900438444 /* AppConstans.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppConstans.h; sourceTree = "<group>"; };
没关系。删除此文件。
现在我想用脚本来做到这一点。 在运行脚本中添加:
echo "/* AppConstans */" > ${PROJECT_DIR}/AppConstans.h
文件已创建,并位于项目所在的文件夹中。现在有必要添加到项目中。我想更改 project.pbxproj 文件并手动添加以下行:
C856C0AC1C4F4B9900438444 /* AppConstans.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppConstans.h; sourceTree = "<group>"; };
但是我不明白如何在这里编写这一行代码。
我有根对象:
rootObject = C856C08A1C4F4B7E00438444 /* Project object */;
我有 AppDelegate.h
C856C0981C4F4B7E00438444 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
所以它应该看起来像文件格式
C856C0AC1C4F4B9900438444 /* AppConstans.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppConstans.h; sourceTree = "<group>"; };
AppDelegate.h 和 AppConstans.h 的区别以及根对象代码 C856C08A1C4F4B7E00438444
C856C08A1C4F4B7E00438444(根对象代码)
C856C0981C4F4B7E00438444(应用委托(delegate))
C856C0AC1C4F4B9900438444(应用常量)
我不能在这里创建这样的代码来通过脚本创建文件。有任何想法吗 ? 任何帮助将不胜感激
更新:
我创建新项目。这是项目三:
第 2 步:
我添加新脚本并运行:
第 3 步:
再看你的项目。该文件不在项目目录中:
第 4 步:在 finder 中打开项目目录:我看到 AppConstans.h 已创建。但是文件没有添加到项目中。我必须手动添加他。
第 5 步:我相互添加了文件,我在 pbxproj 中看到了变化
那么,我如何将名称 AppConstants.h 转换为 C8F3552E1C57A366003D3D39
最佳答案
你应该尝试:
echo "/* AppConstans */" >> "${PROJECT_DIR}/AppConstans.h"
注意 >>
而不是 >
(以及路径周围的引号,以防止扩展)。这将导致您的字符串被附加到文件的末尾,而不是替换文件。
关于c++ - 格式化项目.pbxproj,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34892138/