Как я могу перечислить файлы в CVS без первоначальной проверки? - PullRequest
23 голосов
/ 20 мая 2009

Как мне вывести список файлов CVS без первоначальной проверки?

В Subversion я могу просто сделать "svn ls http://svn.svn.com" в CVS, как я могу это сделать?

Например, у меня есть это соединение CVS:

 pserver:anonymous@evocms.cvs.sourceforge.net:/cvsroot/evocms

Как мне перечислить все файлы в нем?

ОБНОВЛЕНИЕ:

Я делаю это:

c:\>set CVSROOT=pserver:anonymous@evocms.cvs.sourceforge.net:/cvsroot/evocms
c:\>cvs -list ---> doesn't work, prints out the help screen

Ответы [ 8 ]

33 голосов
/ 22 мая 2009

Если это однократная операция, вам не нужно устанавливать переменную окружения CVSROOT. Просто используйте аргумент -d для специальной спецификации хранилища.

Если ваша версия CVS / CVSNT не слишком старая (точнее, вам понадобится либо CVS 1.12.8 или выше, либо CVSNT), то, как уже говорили другие, после входа в систему

cvs ls

должно работать просто отлично.

Если ваша версия CVS / CVSNT не поддерживает команду ls, тогда вы можете попробовать

cvs checkout -c

, который будет выводить только список предопределенных модулей .

Если ваша версия CVS / CVSNT достаточно старая, вам может повезти со следующим хаком (не работает с более свежими версиями CVSNT, если на сервере не включен режим совместимости):

Сначала проверьте корневой каталог репозитория в некотором временном местоположении, чтобы у нас были необходимые метаданные:

cvs -d[your CVSROOT string] co -l -dTemp .

Затем смоделируйте обновление (с каталогами) этой папки:

cd Temp
cvs -n up -d

Это выдаст (почти) тот же вывод, что и фактическая проверка, без фактического получения файлов с сервера.

Если вы работаете в Windows и используете довольно свежую версию CVSNT в качестве клиента, тогда cvs ls автоматически вернется к этому механизму, когда обнаружит сервер, который не поддерживает ls.


О да, и AFAICT нет такой вещи как cvs -list. Это даже не правильный синтаксис командной строки CVS: -list должен был бы быть глобальным аргументом, а не командой, как это следует непосредственно после cvs, и фактическая команда не указана. Но опять же, все многобуквенные аргументы (такие как --help) должны начинаться с двойной черты, например cvs --version. Вы все, возможно, думаете о cvs list, который будет простым псевдонимом для cvs ls?

15 голосов
/ 15 января 2010
cvs -d $CVSROOT rls

надеюсь, это поможет (cvs ver. 1.12.13)

3 голосов
/ 02 октября 2012

Это то, что я использую. msolorzano - это мой логин и пароль, а "Deployer" - это модуль:

cvs -d :pserver:msolorzano:password@gtess-cvs:/cvsdata/data1 rlog -R Deployer

... на самом деле, вы можете проверить список файлов cvs «чистым способом», если выполняете команды в среде UNIX / Linux, например:

cvs -d :pserver:msolorzano:password@gtess-cvs:/cvsdata/data1 rlog Deployer | grep  ',v' | sed 's/RCS file: //g' | sed s/,v//g
3 голосов
/ 20 мая 2009

Сначала необходимо выполнить вход , например:

cvs -d: pserver: anonymous@evocms.cvs.sourceforge.net: / cvsroot / evocms login

Затем, как уже говорили другие, используйте команду ls .

Для справки см. обсуждение удаленных репозиториев

2 голосов
/ 20 мая 2009

есть похожая команда в cvs

Использование: резюме ls
cvs -list для вывода списка модулей, ls для просмотра содержимого модулей.

РЕДАКТИРОВАТЬ: Они правы, список команд и ls одинаковы, я прошу прощения за это.

ну, я действительно не вижу, как составить список cvs dir, фактически не проверяя его. Имеет ли репозиторий, к которому вы пытаетесь получить доступ, доступ в cvsweb?

0 голосов
/ 08 ноября 2010

cvs -d [CVS_ROOT] rlog {module_name}

0 голосов
/ 07 декабря 2009

All

Вот полный способ сделать это:

  1. Запустить командную строку
  2. Скопируйте этот cvs -d логин CVSROOT (или, какой бы ни был соответствующий CVSROOT)
  3. Введите свой пароль и нажмите Enter при появлении запроса. Это может занять некоторое время, но после этого появится новое приглашение.
  4. Введите cvs –d cvs -d CVSROOT ls
  5. БАМ! Там твой список

Имейте в виду, что если у вас не определен CVSROOT, вы можете просто скопировать и вставить свой собственный CVSROOT здесь.

0 голосов
/ 20 мая 2009

см. Команды cvs

например;

cvs list

выведет список всех модулей на сервере CVS

...