У меня есть проект, который использует CVS, и недавно я поднял базовую версию до следующей крупной ревизии, 4.0. Я пытаюсь получить последнюю версию файла перед этим повышением (программно, я знаю, что могу проверить файл в редакторе).
Например, если у меня есть следующие несколько файлов с версиями, я хочу получить то, что находится после стрелки (=>):
makefile ... 3.4, 3.5, 4.0 => 3.5
main.cc ... 3.9. 3.10, 4.0, 4.1 => 3.10
решение1
Вот, пожалуйста:
cvs rlog -b YourModuleName 2>/dev/null |sed '$bd;/^RCS file:/{:d;x;s/\n/\t/g;s/revision[.0-9\t ]*revision //;s/\trevision.*$//;n};/^revision/H;d'
Для файла, имеющего только одну ревизию, будет выведено его имя, но не ревизия.