首页 > 让iOS App编译的时候自动带git版本号

让iOS App编译的时候自动带git版本号

我希望应用编译的时候,可以把git的版本号自动添加到identifier和bundle name上,这样在开发阶段就可以非常方便的查看到底是哪个版本在进行测试。
我现在的做法是每次手动的把这个版本号加上去,非常痛苦。。有时候忘了加,版本就乱了


1,打开点击Project
2,选择target,进入Build Phases
3,点击工具栏上Editor,Add Build Phases,选择Add Run Script Build Phases。
4,target的build Phases会多处一项Run Script
添加下述代码

git status
version=$(git describe --tags)
echo version: $version
info_plist=$BUILT_PRODUCTS_DIR/$PRODUCT_NAME.app/Info.plist
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $version" $info_plist

在项目中使用下述代码测试

    NSString *version = [[[NSBundle mainBundle] infoDictionary]
                         objectForKey:@"CFBundleVersion"];
    NSLog(@"%@",version);

参考链接:
http://feinstruktur.com/blog/2010/12/...


git_version=`git rev-parse --short HEAD`
app_version=`git describe --tags`

/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $app_version" $PRODUCT_SETTINGS_PATH
/usr/libexec/PlistBuddy -c "Set :CFBundleShortVersionString $git_version" $PRODUCT_SETTINGS_PATH
【热门文章】
【热门文章】