Skip to content

Instantly share code, notes, and snippets.

@Lascorbe
Last active December 19, 2015 16:19
Show Gist options
  • Select an option

  • Save Lascorbe/5982723 to your computer and use it in GitHub Desktop.

Select an option

Save Lascorbe/5982723 to your computer and use it in GitHub Desktop.
instructions added
#!/bin/sh
# Increments automatically CFBundleVersion or CFBundleVersion and CFBundleShortVersionString depending if it's a Debug or Release version.
# Created by Luis Ascorbe on 12/04/13.
# Copyright 2013 Luis Ascorbe. All rights reserved.
# Instructions
# 1- Put this file on the same folder where it's the .xcodeproj file
# 2- Create a new Run Script on Build Phases BEFORE Compile Sources
# 3- Rename it as "Auto Increment Version" (or whatever you want)
# 4- Put "${SRCROOT}/AutoincrementVersion.sh"
# Example: http://monosnap.com/image/mFnvFwawyygufe4USbgFItB32DKni8
buildPlist="${PROJECT_DIR}/${INFOPLIST_FILE}"
buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "$buildPlist")
releaseNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleShortVersionString" "$buildPlist")
echo "Plist path: $buildPlist - Build version: $buildNumber - Release Version: $releaseNumber"
# Increment CFBundleVersion for every build
if [ "$CONFIGURATION" == "Debug" ] || [ "$CONFIGURATION" == "Release" ]; then
# newSubbuild=`echo $buildNumber| awk -F "." '{print $3}'`
# newSubbuild=$(($newSubbuild + 1))
# newbuildNumber=`echo $buildNumber| awk -F "." '{print $1 "." $2 ".'$newSubbuild'" }'`
newbuildNumber=$(($buildNumber + 1))
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $newbuildNumber" "$buildPlist"
echo "New Build version: $newbuildNumber"
fi
# Increment CFBundleShortVersionString only for release builds
if [ "$CONFIGURATION" == "Release" ]; then
newSubversion=`echo $releaseNumber | awk -F "." '{print $3}'`
newSubversion=$(($newSubversion + 1))
newReleaseNumber=`echo $releaseNumber| awk -F "." '{print $1 "." $2 ".'$newSubversion'" }'`
/usr/libexec/PlistBuddy -c "Set :CFBundleShortVersionString $newReleaseNumber" "$buildPlist"
echo "New Release Version: $newReleaseNumber"
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment