Вероятно, я сам не знаю чего хочу. Но одно я знаю точно: мне нужен строковый параметр для идентификации версии (в C-программе). Я использую subversion (буквально вчера начал). Исходная версия может являться быть извлечённой из svn://.../tags/, из svn://.../branches. или svn://.../trunc. И это *должно* *быть* *отражено* *в* *номере* *версии*. Может не в номере, в чём угодно ещё, но должно быть известно откуда оно взялось.
Вопрос: а откуда я могу знать откуда вот-этот-вот-файл извлекли? SVN такой keywords не предоставляет. То-есть HeadURL вот есть, да. Oн должен получаться одинаковый в различных ветвях в случае, если файл не меняется. Именно это мне и не нужно.
На самом деле вопрос не "как сделать". Сделать можно как угодно, с помощью какой-то матери. Вопрос в том, что, вероятно, существует какая-то отработанная более-менее уже ТЕХНОЛОГИЯ, как подобные вещи делаются. Хотелось бы знать.
Кроме того, хотелось бы автомагическую нумерацию версий. Может и не нумерацию, может и не версий. Просто для любого файла прошивки хотелось бы иметь возможность сказать что это и откуда оно взялось. А если кто-то сделал checkout, покопался в нём ручками и как потом такую версию нумеровать? Впрочем, тут можно иметь автомагический счётчик сборок, или привычку перед любой сборкой "ответвлять" текущее дерево.