Получение ревизий из хранилища CVS - PullRequest
0 голосов
/ 26 апреля 2010

Я пытаюсь каким-то образом получить все журналы ревизий, которые были сделаны для определенного файла, но я, кажется, глупо делать это: (

Для проверки модуля я делаю следующее

CVSROOT="/home/projects/stuff/" cvs co myworkingdir

в myworkingdir у меня есть тестовый файл paper.tex, и я хочу попробовать чтобы получить ревизии, но я попробовал следующее, но ничего не работает ...

CVSROOT="/home/projects/stuff/" cvs log paper.tex
cvs log: cannot open CVS/Entries for reading: No such file or directory
cvs log: nothing known about paper.tex

-bash-3.2$ CVSROOT="/home/projects/stuff/" cvs log myworkingdir/paper.tex
cvs [log aborted]: no such directory `myworkingdir'

Кто-нибудь знает, как я могу получить журнал ревизий файла paper.tex в модуле myworkingdir?

Большое спасибо за вашу помощь! Клаус

1 Ответ

0 голосов
/ 26 апреля 2010

Ошибка «Не удается открыть CVS / Записи для чтения» обычно означает, что вы не находитесь в песочнице (то есть в папке, извлеченной из CVS) во время выполнения команды.
Обратите внимание, что cvs log никогда не будет использоватьпеременная среды CVSROOT.Вместо этого он считывает строку подключения из метаданных песочницы текущего каталога, то есть файла ./CVS/Root.По этой же причине при запуске cvs log.

вы должны находиться в допустимой изолированной программной среде. Если вы хотите войти в файл без предварительной проверки, вы можете сделать следующее:

cvs -d/home/projects/stuff rlog myworkingdir/paper.tex

Однако действительно ли / home / projects / stuff является местом вашего хранилища?Или это может быть скорее местоположение вашей рабочей копии?Если это местоположение вашего репозитория, тогда должна быть папка / home / projects / stuff / CVSROOT, содержащая все виды административных файлов (например, модули, loginfo, commitinfo, cvswrappers и т. Д.).

В любомВ этом случае убедитесь, что ваша рабочая копия находится где-то еще целиком (то есть нигде в /home/projects/stuff).

...