Поскольку переименование файлов и каталогов является неудобной операцией, то прежде чем начать новый проект полезно установить некоторые соглашения об именах и об организации файлов в целом. Переименование не является полностью невозможным делом, однако, если изменяются имена десятков или сотен файлов и каталогов, то такая операция увеличивает вероятность внесения ошибок. Может случиться так, что ошибки в именах обнаружатся (если такое произойд©т) спустя значительное время после выполнения переименований.
Что делать для создания файлов зависит от вашего текущего состояния.
Когда вы решили начать использование CVS, вы, возможно, уже вед©те
какие-то проекты и имеете группы файлов, которые вы хотели бы поместить в
хранилище CVS. В таком случае удобнее всего использовать команду
cvs import.
Предполагается, что установлена переменная окружения $CVSROOT, указывающая на местоположение хранилища CVS.
Пусть ваши файлы находятся, например, в каталоге WorkDIR, то вам
удобнее сначала перейти в WorkDIR
cd WorkDIR
Предположим далее, что вам удобнее разместить ваш проект в каталоге
хранилища под названием PHENIX. Тогда
cvs import -m "Imported sources" PHENIX MyProgs start
По этой команде содержимое каталога WorkDIR будет переписано в хранилище $CVSROOT/PHENIX. Несмотря на то, что вы указали параметр -m CVS вызовет редактор текста для ввода комментария. Строка MyProgs является специальным тегом, который должен быть здесь, а start - это освобождающий тег.
Далее можно проверить, что все сработало так как ожидалось.
cd ..
mv WorkDIR WorkDIR_Initial
cvs checkout PHENIX
ls -R PHENIX
rm -r WorkDIR_Initial
Удаление исходного каталога является неплохой идеей, поскольку это будет гарантировать, что вы случайно не отредактируете файлы из каталога WorkDIR в обход системы CVS.
Команда checkout системы CVS может иметь в качестве аргумента как имя каталога в хранилище, так и имя отдельного модуля, но любое имя является относительным к $CVSROOT
Если некоторые файлы, которые вы хотели бы импортировать являются двоичными, то, возможно, вы захотите использовать особенность wrappers, чтобы установить какие файлы являются двоичными, а какие текстовыми.