"Экспорт" проверки CVS

У меня есть проверка хранилища CVS. Исходный репозиторий больше не существует. Можно ли запустить что-то похожее на "экспорт" на самой кассе? Я хотел бы закончить с набором всех файлов, извлеченных из оформления заказа, и удалить файлы, которые были добавлены впоследствии.

Пример: я проверяю superProject и получаю

superProject/checkedoutFile1.txt
superProject/checkedoutFile2.txt
superProject/checkedoutFile3.txt
А потом добавляю
superProject/someFile1.txt
superProject/someFile2.txt
superProject/someFile3.txt
а затем я хотел бы удалить все файлы, которые не были в исходном оформлении заказа.

2 ответа

Решение

cvsu выполняет автономное обновление cvs, сравнивая временные метки файлов на диске с их временными метками, записанными в CVS/Entries, Таким образом, вы можете сказать, какие файлы были локально изменены, а какие файлы не известны как находящиеся под контролем CVS.

sudo aptitude install cvsutils
cvsu --batch="tar cf export.tar " --types=AFGM

Бежать cvsu --help чтобы увидеть поддерживаемые параметры командной строки. Эта функциональность предоставляется Perl и может варьироваться от одного компьютера к другому.

В Windows Cygwin поддерживает это.

Просто отметил ваш комментарий и отредактировал мой ответ соответственно.

Мой первоначальный ответ был: просто удалите все каталоги с именем "CVS"

Естественно, если в извлеченные каталоги было добавлено больше материала, вы должны пойти другим путем. CVS хранит свои метаданные в CVS подкаталог в каждом извлеченном каталоге. Различные файлы описаны на стр.16 руководства Cederqvist.

В вашем случае интересная информация хранится в Entries файл, который имеет два разных формата строки:

/filename/...other stuff...
D/directory/...filler...

Первый для простых файлов, второй для каталогов; Там нет конкретного заказа.

Вы можете написать скрипт, который будет идти по дереву каталогов, извлекая из них имена каталогов и файлов Entries файлы. Вы можете кормить этот список в cpio -pmdv target-dir создать копию вашей структуры каталогов, которая содержит именно файлы, cvs export создал бы.

надеюсь, это поможет

Другие вопросы по тегам