Восстановление файлов из архива CVS *, v файлов - PullRequest
8 голосов
/ 15 февраля 2010

Я пытаюсь восстановить некоторый старый исходный код (простой текст) из группы файлов, которыми раньше управляли с помощью CVS. У меня есть каталог, содержащий все файлы исходного кода в формате CVS *, v. Это выглядит в основном как исходные файлы, но там содержится довольно много специфичных для CVS заголовков и информации о ревизиях.

Есть ли простой способ удалить все CVS и сохранить последнюю версию файла?

Ответы [ 5 ]

15 голосов
/ 15 февраля 2010

Вам даже не нужно использовать CVS. CVS был всего лишь интерфейсом к RCS, а файлы * .v действительно являются файлами RCS. Просто проверь их. Например, если у вас есть foo, v просто выполните:

co foo

и он извлечет foo из файла, v

6 голосов
/ 15 февраля 2010

Да, установите клиент CVS, задайте для переменной среды CVSROOT указание на корень вашего хранилища и введите cvs checkout dir, где dir - это каталог верхнего уровня в вашем хранилище.

Если по какой-то причине у вас есть только отдельные ,v файлы, они имеют формат rcs, поэтому, если установлена ​​программа rcs, она сможет получить ревизию чаевых из любого файла ,v.

4 голосов
/ 18 августа 2016

Последние двоичные файлы Windows можно найти здесь:

https://ftp.gnu.org/non-gnu/cvs/binary/stable/x86-woe/

Например: Разместите свои файлы репозитория здесь: c: \ cvs (например, c: \ cvs \ PROJECT создать c: \ cvs \ CVSROOT

создать c: \ work сохраните cvs.exe здесь

пробег:

cvs -d c:\cvs checkout PROJECT
0 голосов
/ 15 февраля 2010

В зависимости от вашей платформы, вы можете обнаружить, что rcs работает хорошо, если вы просматриваете только несколько файлов одновременно. Во многих системах Unix / Linux, если мне не изменяет память, вы можете использовать команду co (checkout) прямо из командной строки.

Или вы можете воспользоваться тем фактом, что CVS и rcs хранят последнюю версию файла на верхнем уровне в верхней части файла, а любые другие ревизии создаются с помощью внутренних различий. Следовательно, вы можете легко удалить последнюю версию с помощью текстового редактора и, возможно, автоматизировать ее с помощью сценария Perl. Этот трюк не будет работать для любой другой версии.

Это варианты, если есть проблемы с быстрой установкой сервера CVS (если он еще не установлен; они, как правило, поставляются с Unix-подобными системами) и проверкой.

0 голосов
/ 15 февраля 2010

Попробуйте настроить клиент CVS и читать ваши файлы как локальный репозиторий CVS.

...