4

我正在使用 Jenkins 设置 CI 系统,并在构建时使用 agvtool 来调整和设置营销和技术版本。

除了在构建时设置版本控制之外,在 .plist 中设置几个自定义值会非常有用。

这可能吗?

4

1 回答 1

10

您可以在构建时通过利用“预操作”选项运行脚本来编辑 Info.plist。

在此处输入图像描述

这是一个示例脚本,它在 Plist 中增加一个名为 UserDefinedVersionNumber 的键

#!/bin/sh

#Grabs info from plist
plist=$SRCROOT"/"$INFOPLIST_FILE
currentBuild=`/usr/libexec/PlistBuddy -c "Print :UserDefinedVersionNumber" "$plist"`

#And changes it before writing out the plist again
if [ -z "$currentBuild" ]
then
    currentBuild=1
    /usr/libexec/PlistBuddy -c "Add :UserDefinedVersionNumber string $currentBuild" "$plist"

else
    currentBuild=$(($currentBuild + 1));
    /usr/libexec/PlistBuddy -c "Set :UserDefinedVersionNumber $currentBuild" "$plist"
fi

您应该可以将脚本直接输入到那个小框中,但我发现编辑和维护它会变得很麻烦,尤其是对于共享脚本。

于 2012-12-03T19:22:41.560 回答