[Q]: FAQ по CVS в OS/2

[A]: Andrew Belov (2:5020/181.2)

Q: Где достать графическую оболочку? A: Существует целых два варианта:

1. jCVS
2. Emacs, C-x v (Tools -> Version Control)

Первый вариант - на Java, второй - на LISP'е. Кроме того, эффективно
действует прикручивание распространенных команд типа "cvs commit" к
user-menu разных file manager'ов.

Q: Как подключиться к SourceForge по CVS over SSH? A: Зарегистрировавшись, берем неизбалованный интерактивностью

порт SSH 1.2.13-03 от 11/03/1997 и создаем себе примерно такое окружение:

SET CVS_RSH=ssh
SET CVSROOT=:ext:mylogin@cvs.myproject.sourceforge.net:/cvsroot/myproject
SET LOGNAME=mylogin

С такими настройками можно вполне приемлемо работать с SourceForge, включая
использование scp для закачки файлов.

Старые порты CVS/EMX часто имели ограничение по длине user-id'а 8 символов,
в новых (1.12.0.x) этой особенности уже нет.

Q: Что за метод “CVS over RSH”, и как им пользоваться? A: RSH - простейшее средство удаленного доступа, в общем случае доступ

контролируется только по "разрешенным" IP-адресам клиентов (%ETC%\rhosts).
Этот вариант можно порекомендовать только для схемы типа "домашний PC
плюс ноутбук", основное его преимущество в том, что приложив минимальные
усилия к настройке (создать %ETC%\rhosts и запустить RSHD), получаем
работающий CVS + удаленный доступ через RSH.

Q: Мой PSERVER взломали. A: Поставить “SystemAuth=no” в %CVSROOT%\CVSROOT\login (это запрещает вход

под несуществующими login'ами, т.к. в OS/2 кроме PSERVER'а пароли проверять
больше некому). Еще следует убедиться, что файлы с расширениями ",v" в
%CVSROOT%\CVSROOT присутствуют в необходимом для настройки сервера объеме
(т.е. раздавать passwd,v и config,v как минимум нежелательно).

Q: Портирую программу из OS/2 в Linux. Как организовать контроль версий? A: Если дело происходит на одной машине с локальным репозитарием, то самый

простой способ - поставить драйвер HPFS/JFS for Linux (см. соответствующие
Linux'овые эхи), а со стороны OS/2 - убедиться, что конфиги в
%CVSROOT%\CVSROOT не содержат символов возврата каретки (CR), иначе на
Linux'овый терминал полезут неразборчивые ругательства.

Hеобходимо помнить, что сам репозитарий CVS для OS/2 никаких CR'ов не
содержит, таким образом, файлы *,v можно спокойно таскать между различными
платформами. CR'ы появляются только в рабочих копиях и в конфигах.

Рекомендуется настроить в Linux'е inetd, чтобы запускать CVS по протоколу
:pserver: и избежать необходимости назначения прав доступа на директории
репозитария.

Q: Портирую программу из Linux в OS/2. Как синхронизировать исходники? A: Импортируем Linux'овые исходники с ключом “-ko”, чтобы не заменять

$Id$'ы своими. Разработку OS/2'шной версии ведем в branch'е (cvs tag
-b), синхронизируемся по "cvs update -j version1 -j version2", где
version1 - предыдущая версия, для которой есть готовый порт,
version2 - свежеимпортированная версия, над которой предполагается
работать.

Q: CVSROOT=:pserver:johndoe@192.168.1.5:c:/cvs - клиент не работает. A: Hеобходимо переписать название хоста в буквенном виде. Hазвание может

быть каким угодно, вплоть до несуществующего (т.е. прописанного через
%ETC%\hosts).