Я сделал это, добавив дополнительную цель сборки - поэтому код версии увеличивается при сборке проекта, а не при фиксации в SVN. Это инструкции, чтобы заставить это работать в IntelliJ IDEA.
Сначала добавьте в корень вашего проекта новый файл с именем svn-revision.build.xml
со следующим содержимым:
<project default="svn-revision">
<target name="svn-revision">
<exec executable="sh" outputproperty="revision">
<arg value="-c" />
<arg value="svnversion | sed -e 's/^[^:]*://;s/[A-Za-z]//'" />
</exec>
<echo>Revision (app): ${revision}</echo>
<replaceregexp file="AndroidManifest.xml" match='android:versionCode="([^".]+)(\.[^"]*)?"' replace='android:versionCode="${revision}"' />
</target>
</project>
Затем в меню перейдите на View > Tools > Ant Build
, затем нажмите маленькую кнопку +
в окне и добавьте вновь созданный файл. Щелкнув зеленую кнопку «Выполнить» в окне Ant Build, вы сразу же запустите скрипт. Чтобы скрипт запускался каждый раз при сборке, вам нужно установить цель 'svn-revision' в качестве цели по умолчанию.