CVS: Как узнать дату создания тега? - PullRequest
8 голосов
/ 23 марта 2011

У нас есть хранилище CVS, и мы создаем тег в активной ветке всякий раз, когда выполняется успешная сборка.Есть ли способ определить дату создания тега?Просмотр истории не помогает, поскольку он сообщает только метки даты и времени файла, когда он был изменен.

Спасибо!

1 Ответ

8 голосов
/ 01 апреля 2011

Вы можете легко настроить CVS для регистрации всех действий, связанных с тегами. В файле '$ CVSROOT / CVSROOT / taginfo' вы можете подключить скрипт предварительного тега, подобный этому:

ALL $CVSROOT/CVSROOT/do_tag

Если этот скрипт возвращает ненулевое значение выхода, операция тега будет быть прерванным Это позволяет проверять синтаксис имен тегов. Вы можете также используйте этот хук для отправки писем, когда бы ни был выпущен новый релиз помечено. Чтобы записать историю всех операций с тегами, вам нужно сделать что-то вроде этого в вашем файле do_tag:

#!/bin/sh
TAGHISTORY=~cvs/taghistory.log
echo -n "$(date): user $USER, tag " >> $TAGHISTORY
echo "$*" >> $TAGHISTORY
exit 0

Если у вас включена функция истории, вы можете выполнить следующая команда:

cvs history -a -T

Это даст вам несколько таких строк, которые будут содержать дату + время, пользователя, модуль и тэг каждой операции тегирования:

T 2011-04-02 07:55 +0000 ralph  mylib [testtag:A]

Дополнительную информацию можно найти в cvsbook по истории

.
...