Xcode 8通过命令行更改配置

时间:2017-04-24 13:50:48

标签: xcode xcode8 git-bash xcconfig

我需要两项功能,但我无法找到支持。第一种是通过bash脚本更改Xcode配置的名称。为此,我尝试过:

xcodebuild -target "target name" -configuration existingConfig CONFIGURATION=newConfigName

上述命令成功执行但不更改配置名称。它只是编译源。虽然我正在使用xcodebuild,但这可能是预期的。

为了更改配置名称,我还查看了xcconfig文件。例如,我将在Xcode中使用名称projectname-existingConfigName.xcconfig创建一个,我会像这样添加一个新的配置名称:

CONFIGURATION = NewConfigName

但是,在上面的例子中,我担心我没有正确使用xcconfig文件。在某个地方有一个很好的参考吗?

我无法找到支持的第二项功能是通过bash或xcconfig动态添加新配置。

最终,我想使用bash执行此操作,但我也对其他意见持开放态度,不包括打开Xcode这样做。我在这里使用git子模块并将它们拉入并在CI构建期间添加动态配置是这个问题源自的地方。

可能有一种更简单的方法可以做到这一点,但我想我先在这里提出问题,看看我是否走在正确的轨道上。

1 个答案:

答案 0 :(得分:0)

还有一种名为Xcodeproj的红宝石宝石,CocoaPods也使用它。它基本上允许您将项目文件视为对象,进行更改并最终保存。以下代码应回答有关重命名的问题的第一部分:

#!/usr/bin/ruby
require 'xcodeproj'

project_path = '../folder/yourproject.xcodeproj'
project = Xcodeproj::Project.open(project_path)

project.build_configurations.each do |configuration|
    if configuration.name == "existingConfig"
        configuration.name = "NewConfigName"
    end
end

project.save()

使用Xcodeproj也应该可以添加新配置,但这是我尚未完成的事情。 文档可在此处找到:

https://github.com/CocoaPods/Xcodeproj http://www.rubydoc.info/gems/xcodeproj/Xcodeproj/Project