Розділ 2. Початок роботи

Доступ до сховища

У цьому розділі ми поговоримо про те, як користуватися основними функціональними можливостями системи керування версіями за допомогою Cervisia, зокрема отриманням модулів зі сховища і роботи з цими модулями. Щоб виконати ці дії, вам слід мати доступ до сховища як клієнт, це означає, що хтось (ймовірно, адміністратор сховища CVS) має надати вам обліковий запис на комп’ютері сервера. Крім того, ви можете просто створити локальне сховище для вашого власного проєкту.

Підказка

Якщо ви плануєте розробляти складний проєкт, вам варто скористатися можливостями CVS, навіть якщо ви є єдиним розробником. Ви можете внести всі зміни до робочої копії, а потім скористатися Cervisia (або будь-яким іншим інструментом роботи з CVS) для оновлення і надсилання змін. Таким чином, ви отримаєте можливість стежити за змінами, які спричиняють до помилок у програмі, скасовувати зміни, уникати випадкової втрати даних тощо. За допомогою Cervisia просто створити локальне сховище.

Процедура 2.1. Створення локального сховища

  1. Відкрийте діалогове вікно Створити нове сховище (cvs init) за допомогою пункту меню СховищеСтворити....

  2. Натисніть кнопку ..., щоб обрати теку, у якій ви бажаєте створити сховище, або введіть його адресу у поле для введення тексту. Наприклад, якщо ви бажаєте розташувати сховище у теці /home/user і назвати його cvsroot, вам слід ввести /home/user/cvsroot у поле для введення тексту або обрати теку /home/user за допомогою інструменту графічного вибору, а потім додати cvsroot.

  3. Підтвердьте відомості натисканням кнопки Гаразд. Після натискання Cervisia створить і ініціалізує нову теку сховища.

  4. Тепер ви можете імпортувати вашу поточну роботу до сховища або просто створити теку у сховищі, щоб розпочати роботу над новим модулем з нуля.

У Cervisia передбачено вбудовану оболонку для керування всіма адресами ваших сховищ — діалогове вікно Налаштувати доступ до сховищ. Щоб відкрити це діалогове вікно, скористайтеся пунктом меню СховищеСховища....

Рисунок 2.1. Знімок діалогового вікна налаштування доступу до сховищ у Cervisia

Знімок діалогового вікна налаштування доступу до сховищ у Cervisia

Існує декілька способів доступу до сховища CVS. Доступ до сховища можна отримати за допомогою розпізнавання за паролем (:pserver:), за допомогою безпечної оболонки (з використанням :ext:), за допомогою локального сховища (:local:) тощо. Формат адреси сховища має бути таким (необов’язкові елементи вказано у квадратних дужках):

[:метод:][[користувач][:пароль]@]назва вузла[:[порт]]/шлях/до/сховища

Не всі з цих елементів (користувач, пароль, назва вузла, порт) неодмінно потрібні для доступу до сховища. Перелік потрібних відомостей залежить від використаного методу доступу, методи доступу можна розділити на такі категорії:

Локальний

Метод локального доступу є типовим методом, що використовується у CVS. Тому, за бажання, ви можете додати метод :local: до адреси сховища: ви можете просто ввести шлях до теки, у якій зберігається сховище CVS і яка доступна з вашого комп’ютера, наприклад /шлях/до/сховища або, якщо користуватися конкретним прикладом, /home/cvs.

Фізично, сховище може зберігатися на диску, який змонтовано за допомогою NFS, але це вже деталі. Якщо ви створили локальне сховище, його адресою буде простий шлях до його теки.

rsh

Розташуванням сховища є щось на зразок :ext:користувач@вузол.url.org:/шлях/до/сховища.

Для користування цим методом вам потрібен обліковий запис користувача на комп’ютері-сервері (у нашому прикладі, host.url.org) і віддалений доступ до оболонки для обміну даними. Типово, CVS використовує з цією метою rsh; але rsh давно вже визнано не дуже безпечним, його повсюдно витісняє ssh.

Якщо ви бажаєте скористатися ssh, вам слід встановити значення змінної середовища $CVS_RSH так, щоб вона вказувала на ssh на час користування клієнтом cvs. Cervisia з легкістю підтримує подібні налаштування.

Зауважте, що Cervisia не зможе відповісти на можливі запити щодо пароля від комп’ютера сервера. Вам слід зробити так, щоб віддалений вхід працював без потреби у введенні пароля. За використання неналаштованого rsh цього можна досягти, наприклад, створенням файла .rhosts у вашій домашній теці зі списком всіх надійних вузлів (див. сторінку довідника (man) rsh).

За використання ssh досягти потрібного результату можна копіюванням вашого відкритого ключа, щоб зберігається у файлі identity.pub, розташованому у теці $HOME/.ssh/, на сервер. У цьому випадку ключ має бути незашифрованим за допомогою пароля (див. сторінку довідника (man) ssh).

pserver

Адреса сховища виглядає так: :pserver:користувач@вузол.url.org:/шлях/до/сховища

За використання цього способу програма отримуватиме доступ до сервера за допомогою особливого протоколу з відносно простим розпізнаванням (pserver відповідає розпізнаванню за паролем). Перш ніж ви зможете скористатися таким сервером, вам слід дізнатися про ім’я користувача і пароль, вказані адміністратором сервера CVS, після цього вам слід увійти до системи. Зауважте, що ваше ім’я користувача, що використовуватиметься для розпізнавання за паролем на CVS, не обов’язково збігається з іменем користувача системи. Перш ніж отримувати доступ до сервера CVS, вам слід увійти до системи.

Проєкти з відкритим кодом, зазвичай, використовують анонімний доступ CVS до кодів. Це означає, що ви з легкістю можете отримати найсвіжіші коди програм, змінювати і створювати латки (відмінності) відносно сховища без особистого облікового запису CVS. Зазвичай, для анонімного доступу CVS використовується розпізнавання за паролем (:pserver:), доступ надається лише для читання сховища: ви не зможете безпосередньо вивантажувати ваші зміни.

Якщо вам відомі метод доступу і адреса сховища, ви можете додати його до списку сховищ Cervisia:

Процедура 2.2. Додавання нового сховища

  1. Відкрийте діалогове вікно Налаштувати доступ до сховищ за допомогою пункту меню СховищеСховища....

  2. Натисніть кнопку Додати..., щоб відкрити діалогове вікно Додати сховище.

  3. Введіть адресу сховища у поле Сховище:. Cervisia автоматично вимкне всі пункти діалогового вікна, які не відповідають вказаному вами способу доступу.

  4. Якщо ви використовуєте зовнішній метод доступу до сховища, введіть назву віддаленої оболонки, якою ви бажаєте скористатися (наприклад ssh) у поле Використовувати віддалену оболонку (лише для сховищ :ext:):.

  5. Натисніть кнопку Гаразд. Ви побачите сховище, параметри якого ви щойно ввели, у списку сховищ.

  6. Якщо методом доступу до сховища, який ви щойно ввели, є розпізнавання за паролем (pserver), вам доведеться увійти до системи, перш ніж з’єднуватися з сервером. Наведіть вказівник миші на позначку сховища у списку і клацніть лівою кнопкою миші, щоб позначити її, а потім натисніть кнопку Увійти.... Введіть ваш пароль у діалоговому вікні, яке відкриє програма.

    Якщо ви ввели правильний пароль, у стовпчику Стан відповідного запису сховища pserver напис зміниться з Не зареєстровані на Зареєстровані.

  7. Натисніть кнопку Гаразд, щоб застосувати внесені вами зміни або додати іншу адресу до списку. Cervisia зберігатиме довільну кількість введених вами адрес.