Створення латок

Іноді у вас може виникнути потреба у надсиланні внесених вами змін для рецензування перед їх надсиланням до сховища, у вас також може не бути доступу на запис до сховища (отже, ви просто не зможете надіслати зміни). У CVS передбачено стандартні формати для поширення змін у вашій робочій копії у такий спосіб, щоб інші люди змогли переглянути ваші зміни, випробувати їх на власній робочій копії і внести їх до сховища CVS. Файл, у якому міститимуться подібні зміни називається латкою, його можна створити командою cvs diff у той самий спосіб, у який створюються файли відмінностей у розділі «Спостереження за різницями між версіями». Поширення латок замість набору файлів зменшує обсяг даних, які слід передати, з латками легше працювати, оскільки ви можете надіслати єдиний файл з латкою, у якому міститимуться зміни у багатьох файлах кодів.

Доступ до цієї можливості у Cervisia можна отримати за допомогою пункту меню ДодатковіСтворити латку для сховища....

Важливо

За допомогою пункту меню Створити латку для сховища... можна створити латку, яка міститиме всі зміни у всіх файлах вашої робочої копії (пісочниці) порівняно з BASE сховища. Тому вибір файлів у основній області перегляду програми не вплине на перелік змін у створеному файлі латки.

Іншою можливістю є позначення одного файла у основній області перегляду з наступним використанням пункту Переглянути журнал... з меню Перегляд або наведення вказівника миші на позначку файла з наступним клацанням правою кнопкою миші і вибором пункту Переглянути журнал... з контекстного меню. Обидві ці послідовності дій призведуть до відкриття вікна перегляду журналу. Вам слід обрати версію, до якої ви бажаєте створити латку як модифікацію «A», а потім натиснути кнопку Створити латку.... Програма створить латку з відмінностями між позначеним файлом у вашій робочій копії і версією, обраною як модифікація «A».

Перш ніж розпочати створення латки, Cervisia відкриє діалогове вікно, за допомогою якого ви зможете налаштувати формат виводу.

Рисунок 4.2. Знімок діалогового вікна накладання латки у Cervisia

Знімок діалогового вікна накладання латки у Cervisia

Формат виводу

Можна використовувати один з трьох форматів виводу:

Звичайний: формат, яким можна скористатися для того, щоб редактор ed міг автоматично створити іншу копію старого файла, яка збігатиметься з новим файлом. За використання нормального формату виводу зміни буде позначено символами < і >, контекстна інформація не додаватиметься.

Уніфікований: найпоширеніший формат обміну латками. За використання уніфікованого формату для запису відмінностей, окрім номерів рядків, буде використано рядки контексту. Додавання цих рядків зробить процес застосування латок надійнішим. У цьому форматі відмінності буде викладено у компактній і придатній для читання формі, з полем заголовка для кожного з файлів і окремими розділами (шматками) для кожної з відмінностей. Рядки контексту, які буде додано до кожної відмінності, спростять читання змін. За використання уніфікованого формату виводу для позначення змін буде використано символи «+» і «-».

Контекстний, за використання цього формату буде виведено ті самі дані, що і за використання уніфікованого формату, але у менш компактному вигляді. У файла виводу у контекстному форматі зміни буде позначено символом «!».

Кількість рядків контексту:

Тут ви можете вказати кількість рядків контексту для форматів уніфікованого та контекстного виводу. Цим параметром не можна буде скористатися для звичайного формату виводу, оскільки за використання цього формату контекстні дані не записуються. Збільшення кількості рядків контексту полегшує читання латки і робить її застосування точнішим, але збільшує розмір латки. Рекомендуємо вам використовувати принаймні два рядки контексту для належного функціонування дії з латання.

Параметри ігнорування

Тут ви можете вказати зміни, які програма вважатиме відмінностями під час створення латки.

Після визначення формату виводу Cervisia створює латку і відкриває діалогове вікно Зберегти як. За допомогою цього діалогового вікна ви зможете вказати назву файла латки і його розташування.