https://www.example.com/svn/SomeProject/trunk
ну, или
https://www.example.com/svn/SomeProject/tags/1.0.20
Задание - получить с помощью Ант-скрипта текущую версию и номер ревизии, то есть для первого варианта это было бы:
trunk-5899
а для второго варианта -
1.0.20-6899
Одно из решений - чтение из файла .svn/entries:
<target name="-getVersion"> <loadfile property="tag" srcFile=".svn/entries"> <filterchain> <headfilter lines="1" skip="4" /> <tokenfilter> <replaceregex pattern="/" replace="${line.separator}" flags="g"/> </tokenfilter> <tailfilter lines="1"/> <deletecharacters chars="\n" /> </filterchain> </loadfile> <loadfile property="revision" srcFile=".svn/entries"> <filterchain> <headfilter lines="1" skip="3" /> <deletecharacters chars="\n" /> </filterchain> </loadfile> <property name="version.calculated" value="${tag}-${revision}"/> <echo message="the tag is ${version.calculated}"/> </target>
PS:
Лучщее решение
Комментариев нет:
Отправить комментарий