LINUX.ORG.RU
ФорумAdmin

Subversion, запись номера текущей ревизии в текстовый файл в репозитории

 , ,


0

1

Есть необходимость автоматически записывать номер текущей ревизии в текстовый файл в репозитории проекта во время коммита. Т.е. кто-то делает коммит и автоматом (по хуку) в файл version.txt в корне проекта пишется номер текущей ревизии. Как такое можно сделать?



Последнее исправление: kernel32ddl (всего исправлений: 1)

Научись уже читать маны

$ svnversion --help
usage: svnversion [OPTIONS] [WC_PATH [TRAIL_URL]]

  Produce a compact 'version number' for the working copy path
  WC_PATH.  TRAIL_URL is the trailing portion of the URL used to
  determine if WC_PATH itself is switched (detection of switches
  within WC_PATH does not rely on TRAIL_URL).  The version number
  is written to standard output.  For example:

    $ svnversion . /repos/svn/trunk
    4168

А какой скрипт ты напишешь для post-commit hook'a мне без разницы

anonymous
()

можно в текстовый файл добавить переменную, что-то вроде $rev, точно не помню, которая при комммите (или апдейте) будет заменяться номером ревизии. При этом у файла еще должен быть выставлен соответствующий атрибут. Короче, читай документацию

Harald ★★★★★
()
Ответ на: комментарий от anonymous

Кстати, tazhate, это надо бы в Development снести с -7

Кстати, аноним, я не модератор.

tazhate ★★★★★
()
Ответ на: комментарий от Harald

Номер версии я знаю как получить у меня на мыло уведомления приходят, там и номер и комментарий к комимиту и прочее. Не понятно как это запихать в файл в самом репозитории.

kernel32ddl
() автор топика
Ответ на: комментарий от kernel32ddl

Решение здесь:

http://svnbook.red-bean.com/en/1.4/svn.advanced.props.special.keywords.html

Вкратце. Добавляем в нужный файл:

$Rev$:     Revision of last commit
$Author$:  Author of last commit
$Date$:    Date of last commit

И через свойства этого файла активируем для него эти keywords.

kernel32ddl
() автор топика
Ответ на: комментарий от kernel32ddl

а там еще написано, что $Rev$ - это последний номер ревизии, при котором данный конкретный файл изменялся. А не последний номер ревизии всего репозитория. Так что нужно для сабжевой цели задействовать выхлоп команды svnversion

Harald ★★★★★
()
Ответ на: комментарий от Harald

Да и правда, проглядел этот нотис. Облом. А как тогда можно прикрутить svnversion?

kernel32ddl
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.