Я пытающийся восстановить некоторый старый исходный код (простой текст) с набора файлов, которые раньше управлялись с CVS. У меня есть каталог, содержащий все файлы исходного кода в CVS *, v формат файла. Это главным образом походит на исходные файлы, но существует довольно мало CVS определенный заголовок и информация о пересмотре там.
Существует ли просто способ разделить весь материал CVS и просто сохранить последний пересмотр файла?
Да, установите клиент CVS, установите переменную среды CVSROOT так, чтобы она указывала на корень вашего репозитория, и введите cvs checkout dir
, где dir
- это каталог верхнего уровня в вашем репозитории.
Если по какой-то причине у вас есть только отдельные файлы , v
, они имеют формат rcs
, поэтому, если установлена программа rcs
, она должна быть чтобы получить ревизию подсказки из любого файла , v
.
Вам даже не нужно использовать CVS. CVS был лишь интерфейсом для RCS, а файлы * .v на самом деле являются файлами RCS. Просто посмотрите их. например, если у вас есть foo, v просто выполните:
co foo
, и он извлечет foo из файла v
В зависимости от вашей платформы rcs может работать хорошо, если вы просматриваете только несколько файлов одновременно. Во многих системах Unix / Linux, если мне не изменяет память, вы можете использовать команду co (checkout) прямо из командной строки.
Или вы можете воспользоваться тем фактом, что CVS и rcs хранят последнюю версию файла в заголовке рядом с верхней частью файла, а любые другие ревизии создаются путем внутреннего применения различий. Следовательно, вы, вероятно, можете легко удалить последнюю версию с помощью текстового редактора и, возможно, автоматизировать ее с помощью сценария perl. Этот трюк не сработает ни в одной другой версии.
Это варианты на случай, если возникнут проблемы с быстрой установкой сервера CVS (если он еще не установлен; они, как правило, идут с Unix-подобными системами) и проверкой.
Попробуйте установить клиент CVS и читать ваши файлы как локальный репозиторий CVS.