МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
Кафедра САПР
Звіт
до лабораторної роботи №4
На тему: «Використання MS SourceSafe для командної роботи над програмним продуктом»
З курсу: Технологія програмування та створення програмних продуктів.
Мета роботи. Навчитись працювати з пакетом MS SourceSafe:
За допомогою системи контролю версій організувати зберігання версій програмного коду одної програми, навчитися звертатись до будь-якої версії цієї програми та продивлятись зміни, зроблені від версії до версії.
Короткі теоретичні відомості
Control Version System (CVS)
Більшість сучасних проектів не пишуться поодинці, і перед розробниками встає проблема сумісного володіння кодом та іншими артефактами проекту. Навіть якщо над проектом працює лише декілька чоловік, об'єднання внесених змін в загальну версію може займати багато часу.
Для вирішення даного завдання використовують системи управління версіями (від англ. Control Version System (CVS) ), які дозволяють зберігати в централізованому репозиторії множину версій артефактів проекту (документів, файлів і так далі). Репозиторій — сховище яких-небудь даних. Дані в репозиторії зазвичай зберігаються у вигляді файлів або з використанням систем управління даними (СУБД), які забезпечують надійні механізми для маніпулювання даними.
Таким чином, CVS призначені для виконання різної роботи, пов'язаної з обліком версій для файлів і директорій – будь-яких файлів, будь-яких об'ємів, будь-яких рівнів вкладеності. Системи контролю версій дозволяють у будь-який момент часу легко знайти і відновити ту версію файлу, яка була збережена в репозитарії. В процесі роботи над проектами, документами, або просто з якими-небудь даними, може виникнути необхідність в збереженні поточного стану файлів і директорій.
Рекомендується також зберігати виконувані файли, файли довідок, моделі баз даних проекту, загалом все, що пов'язане з проектом і може потрібно при проектуванні. За допомогою репозитарію зручно працювати і над текстовими проектами: технічною документацією проекту або книгою. Навіть якщо над проектом працює одна людина, то використання систем управління версіями виправдовує витрачентий на їх вивчення і конфігурацію час.
Звичайний цикл роботи над програмними модулями полягає в наступних етапах:
Оновлення локальної (робочою) копії проекту і вмісту репозиторія;
Правка ресурсів проекту;
Фіксація змін.
Огляд систем контролю версій
Система контролю версій – комплекс програмного обспечения для забезпечення колективної роботи з початковим кодом, а так само відстежування змін в нім.
Типові завдання, які дозволяє вирішити система контролю версій:
Дізнатися, що я поміняв з моменту останньої “живої” копії?
Отримати исходник встановленої місяць тому системи.
Паралельна робота 2-х і більш за чоловік над одним исходником.
У практичній роботі часто доводиться використовувати 4-и системи контролю версій:
CVS
Microsoft SourceSafe
Subversion
GIT
CVS
Одна з перших систем контролю версій. На даний момент CVS є застарілою. З CVS найпростіше перейти на Subversion. Мінуси CVS в порівнянні з Subversion:
у CVS треба явно указувати, є файл текстовим або бінарним;
у CVS не атомарні комміти;
у CVS багато різних методів аутентифікації і завдання пошуку загальних для клієнта і сервера не завжди тривіальна.
Microsoft Visual SourceSafe (VSS)
Плюси Microsoft SourceSafe:
Інтеграція з Visual Studio.
Мінуси Microsoft SourceSafe:
SourceSafe вимагає Checkout-а файлу перед його зміною.Це має наступні підводні камені:
неможливо працювати з іншої ОС, наприклад Linux, оскільки доведеться постійно перезавантажуватися;
при Checkout-е забирається остання версія файлу (начебто виправлено в VSS 2005);Наприклад: є якщо ти міняєш файли і тобі знадобилося змінити ще один файл, то у випадку якщо його хтось інший встиг поміняти, тобі доведеться зводити зміни при ще незавершеній правці коди. Задоволення нижче середнього.
SourceSafe не відстежує видалення файлів.Тобто якщо хтось видалив файл з репозиторія, то у всіх останніх він локально залишиться (особливо цікаво це виглядає після переміщення .h-файлов). Тобто у разі активної роботи початковий код починає розходитися. І виникає ситуація, коли у двох розробників остання версія і в Checkout-е нічого не немає, але у одного все працює, а у іншого – ні.
SourceSafe при відкатуванні зміні видаляє історію правок.Тобто, якщо хтось відкатався до 1-ої версії – пиши пропало;
Розмір бази початкової коди обмежений 4Гб;
На скільки мені відомо, VSS єдина система контролю версій, розробники якої не користуються їй для зберігання початкової коди (початковий код у Subversion лежи в Subversion, у GIT-а в GIT і так далі).
Subversion
Subversion спеціально розроблявся для заміни CVS і є своєрідною роботою над помилками. З цієї причини синтаксис багатьох команд у CVS і Subversion майже співпадає.
Як основні плюси Subversion в порівнянні з CVS можна перерахувати:
Не потрібно явно указувати бінарний файл, або текстовий;
З'явилися атрибути файлів і каталогів (через них, наприклад можна зробити файл виконуваним для Linux з Windows);
Відстежується робота з директоріями і переміщенням файлів;
Атомарні коммиты;
Версії всіх файлів мають єдину крізну нумерацію – ревізію.
Subversion є ценрализованной системою контролю версій. Кожен користувач працює зі своєю локальною копією. Для коммита необхідно підключитися до сервера.
GIT
GIT був розроблений Лінусом для роботи над ядром Linux-а. На відміну від Subversion, GIT є децентрализованной системою контролю версій. Кожен працює зі своїм репозиторієм, зміни з якого періодично переносяться в основній.
Тобто в GIT є локальні коммиты/обновления для робочої копії і є коммиты/обновления для репозиторія в цілому.
Так само GIT дозволяє передати зроблені зміни поштою. Це дозволяє штатними засобами GIT отримувати патчи від людей, які не мають доступу до центрального репозиторія.
Microsoft Visual SourceSafe
Microsoft Visual SourceSafe (MS VSS) – файл-серверна система управління версіями, яка призначена для невеликих команд розробників. VSS працює з загальним сховищем, що розділяється декількома користувачами, а для кожного файлу зберігається історія версій.
VSS входить до складу пакету Microsoft Visual Studio і інтегрований з продуктами цього пакету. Доступний тільки для платформи Windows.
У листопаді 2005 року вийшла оновлена версія продукту — Visual SourceSafe 2005, що обіцяє підвищену стабільність і продуктивність, покращуваний механізм злиття для -файлов і файлів в, а також роботу через HTTP.
Visual SourceSafe націлений на індивідуальних розробників або невеликі команди розробників. Там де VSS недостатньо, йому на заміну пропонується новий продукт майкрософту —, що входить в склад Visual Studio Team System.
Адміністрування SourceSafe
При роботі з SourceSafe виділяються 2 принципово різних режими роботи (вони навіть розділені на два застосування) — це режим адміністрування бази даних SourceSafe і режим користувача.
Адміністрування бази даних SourceSafe складається з двох груп завдань:
Робота з користувачами бази даних (учасниками проектів)
Робота з даними
Запуск SourceSafe
Для адміністрування SourceSafe необхідно запустити програму адміністратора бази даних. Натисніть кнопку Пуск системи Windows, в головному меню, що з'явилося, виберіть команду Програми, потім в меню, що відкрилося, знайдіть теку Microsoft Visual Studio, а в ній Microsoft Visual SourceSafe, в якому і знаходиться шукана програма адміністратора бази даних.
Перше з'єднання з базою даних відрізняється від подальших, оскільки ще немає жодного користувача, окрім Admin, якому до того ж ще не призначений пароль. Діалогове вікно першого з'єднання показане на Рис. 1. В даному випадку поле Old password (Старий пароль) необхідно залишити порожнім, потім ввести в поле New password новий пароль і продублювати його в полі Verify (Перевірка). Надалі з'являтиметься стандартне вікно входу з вказівкою імені користувача і пароля.
Рис. 1. Призначення/зміна пароля користувача Admin при першому приєднанні до бази даних SourceSafe
Настройка
Настройка режими роботи програми SourceSafe виконується в діалоговому вікні SourceSafe Options (Режими роботи SourceSafe). Це вікно складається з шести вкладок (Рис. 2), елементи управління яких визначають режими роботи бази.
Рис. 2. Вкладка General діалогового вікна SourceSafe Options
На вкладці General (Загальні) (Рис. 2) можна встановити загальні параметри роботи.
Прапорець Allow multiple checkouts (Допускати множинний доступ) — вирішує редагування одного файлу декількома користувачами. В цьому випадку об'єднанням змін займається адміністратор або окремо виділений користувач.
Зауваження
Режим множинного доступу на практиці застосовується достатньо рідко.
Прапорець Use network name for automatic user log in (Використовувати мережеве ім'я при вході в програму) — дозволяє автоматично підставляти мережеве ім'я користувача при реєстрації в програмі SourceSafe.
Поле Default Database name (Ім'я бази даних за умовчанням) — це поле дозволяє задати ім'я бази даних за умовчанням, якщо при роботі над проектами використовується декілька баз даних.
Поле Expand keywords in Hies of type (Використовувати розширення ключових слів для типів файлів) — дозволяє задати, для яких типів файлів відбуватиметься заміна ключових слів більш значущою інформацією, поміщеною в заголовки файлів.
Поле Log all actions in journal file (Реєструвати всі дії у файлі журналу) — задає файл журналу, в якому фіксуються всі дії користувачів при роботі з базою даних.
Вкладка Project Security (Захист проекту) (Рис. 3) дозволяє організувати розмежування прав доступу даним на рівні проекту. Користувач може мати наступні має рацію при роботі над проектом;
Read (Читання) — має рацію тільки на читання файлів проектів (скорочено позначається буквою R);
Check Out/Check In (Блокування при редактировании/Освобождение блокування) — права на редагування файлів і повернення змінених файлів в базу даних (скорочено позначається буквою З);
Add/Rename/Delete (Добавленіє/перєїменованіє/удаленіє) — права на додавання, перейменування, видалення проектів або файлів проектів (скорочено позначається буквою А);
Destroy (Знищення) — право на повне видалення файлу і всіх його версій або всього проекту (скорочено позначається буквою D).
Рис. 3. Вкладка Project Security діалогового вікна SourceSafe Options
За замовчанням всім користувачам SourceSafe надається повний доступ, тобто можливість виконання всіх чотирьох дій в базі даних. Для того, щоб можна було індивідуально призначати доступ користувачам, призначений прапорець Enable project security (Доступність захисту проекту). Якщо цей прапорець встановлений, то стають доступні прапорці призначення прав користувачів за умовчанням в області Default user rights (Права користувачів за умовчанням). У цій групі можна перепризначувати права доступу користувачів, надані їм за умовчанням при реєстрації. Рекомендується при цьому встановлювати тільки права на читання (R) і на блокування/звільнення файлів при редагуванні (С). При встановленому прапорці Enable project security стають доступні команди меню Tools (Сервіс) адміністратора, що відповідають за роботу з правами користувачів:
Rights by Project (Права на проекти) — відкриває діалогове вікно Project Rights (Права на проекти) для настроювання прав на кожен з проектів;
Rights Assignments for User (Призначення прав користувача) — відкриває діалогове вікно Assignments for для індивідуальної настройки прав вибраного користувача;
Copy User Rights (Копіювання прав користувача) — відкриває діалогове вікно Copy Rights Assignments to (Копіювання призначення має рацію для) для копіювання має рацію вибраному користувачеві від користувача, вказаного в діалоговому вікні.
Вкладка Shadow Folders (Тіньові теки) діалогового вікна SourceSafe Options (Рис. 4) задає теку "тіньового" зберігання файлів вказаного проекту, при цьому підтримується автоматичний контроль актуальності копій файлів в такій теці. За допомогою "тіньових" тек зручно виконувати остаточну збірку проекту.
Рис. 4. Вкладка Shadow Folders діалогового вікна SourceSafe Options
Елементи управління цієї вкладки служать для виконання певних дій.
Поле Set shadow folder for project (Встановити теку для проекту) — призначає проект, для якого виконується установка тіньової теки. Розташована праворуч від поля кнопка Browse (Перегляд) відкриває діалогове вікно, що дозволяє здійснити пошук і призначення проекту в дереві проектів SourceSafe.
Поле Set shadow folder to (Встановити теку) — призначає вибір тіньової теки або введення нової. Розташована праворуч від поля кнопка Browse (Перегляд) відкриває діалогове вікно для пошуку потрібної теки.
В області Files in Shadow Folder (Файли в тіньовій теці) розташовані наступні елементи управління.
Прапорець Set read-only flag for all files (Встановити прапор тільки для читання для всіх файлів) — встановлює режим, при якому всі файли, записані в теку, матимуть ознаку тільки для читання.
Поле із списком End-of-line, що розкривається, characters for files (Символ кінця файлу) — призначає символ кінця файлу.
Поле із списком File, що розкривається, date/time (Дата/час файлу) — визначає, яким часом датувати файл.
Кнопка Set Another (Призначити інший) очищає всі поля для установки параметрів наступного проекту.
Наступні дві вкладки Web Projects (Web-проекты) і Web діалогового вікна SourceSafe Options дозволяють набудувати проекти, призначені для роботи в Internet. На вкладці Web Projects настроюються параметри окремого проекту для роботи в мережі, а на вкладці Web — загальні для всіх проектів параметри.
Вкладка File Types (Типи файлів) діалогового вікна SourceSafe Options визначає типи файлів проектів для середовищ розробки програмних продуктів, що входять в пакет Visual Studio. Для настройки Visual Basic 6 необхідно використовувати значення списку VB (Рис.5).
На цій вкладці розміщені наступні елементи управління;
поле Binary files (Двійкові файли) — задає типи файлів, які вважаються в SourceSafe двійковими, а не текстовими;
список File groups (Групи файлів) — призначає вибране середовище розробки, якою відповідають типи файлів;
поле File types included in file group (Типи файлів, включені в групу) — визначає розширення файлів, які включені в дану групу файлів.
На вкладці знаходяться також кнопки Add (Додати) і Delete (Видалити), що дозволяють при необхідності додати нову групу файлів або видалити непотрібну.
Зауваження
Зазвичай параметри вкладки File Types встановлені за умовчанням і редагувати їх не потрібно.
Рис. 5. Вкладка File Types діалогового вікна SourceSafe Options
Робота з користувачами
Основне завдання при роботі з користувачами — це підтримка списку користувачів і призначення прав користувачів при операціях з проектами і файлами проектів. Робота з користувачами виконується у вікні адміністратора Visual SourceSafe Administrator (Рис.6), де за умовчанням представлений список користувачів бази даних.
Рис. 6. Вікно адміністратора SourceSafe
У цьому списку адміністратор може виконати наступні дії з користувачами.
Додати користувача
Видалити користувача
Змінити параметри користувача
Змінити пароль користувача
Додавання користувачів виконується командою Add User (Додати користувача) меню Users (Користувачі). При цьому викликається однойменне вікно Add User (Рис. 7), в якому можна ввести ім'я користувача і його пароль.
Рис. 7. Вікно Add User для додавання користувача
Видалення користувача виконується командою Delete User (Видалити користувача) меню Users. При цьому відкривається діалогове вікно із запитом на підтвердження видалення. Користувач при цьому не повинен бути сполучений з базою даних.
Для зміни параметрів користувача необхідно виконати команду Edit User (Змінити користувача) меню Users (Користувачі). При цьому викликається однойменне вікно, аналогічне окну для додавання користувача (Рис. 7), в якому відсутнє поле Password (Пароль). Для зміни імені користувача слід ввести інше ім'я в поле User name (Ім'я користувача).
Щоб змінити пароль користувача, необхідно скористатися діалоговим вікном Change Password (Рис. 8), що відкривається при виборі команди Change Password (Змінити пароль) меню Users.
Рис. 8. Діалогове вікно Change Password для зміни пароля користувача
У полі New password (Новий пароль) діалогового вікна Change Password необхідно ввести новий пароль і продублювати його в полі Verify (Перевірка). Для зміни пароля адміністратора потрібно додатково ввести старий пароль.
Після того, як сформований список користувачів, слід призначити всім користувачам індивідуальні права доступу до проектів бази даних.
Зауваження
Необхідно нагадати, що доступ до роботи з правами виконується тільки зі встановленим прапорцем Enable Project Security (Доступність захисту проекту) на вкладці Project Security (Захист проекту) настройки режимів роботи адміністратора SourceSafe.
Для настроювання прав користувачів на проекти слід виконати команду Rights by Project (Права на проекти) меню Tools (Сервіс). При цьому викликається діалогове вікно Project Rights'(Права на проекти), в якому можна виконати настроювання прав користувачів окремо на кожен з проектів (Рис. 9).
Рис. 9. Діалогове вікно Project Rights для настроювання прав користувачів на проекти в базі даних
Для настроювання прав на проект слід в списку дерева проектів вибрати проект, для якого виконується настройка має рацію, потім з правого списку вибрати користувача і за допомогою прапорців, розташованих в області User rights (Права користувача), встановити набір необхідних прав. Права встановлюються негайно і відображаються в стовпці Rights (Має рацію) списку користувачів у вигляді буквених скорочень. За допомогою цієї настройки кожному проекту можна призначити індивідуальні права доступу користувачів до файлів проекту.
В даному випадку при настройці має рацію відправною крапкою є проект. Це зручно, наприклад, при створенні нового проекту або перевірці прав існуючого проекту, оскільки видно весь список користувачів. Проте якщо потрібно призначити індивідуальні права одному користувачеві, то доведеться шукати цього користувача по всіх проектах, що досить незручно. Для другого варіанту призначення прав існує діалогове вікно Assignments for (Призначення для), яке викликається командою Rights Assignments for User (Призначення прав користувача) в меню Tools (Сервіс). Це вікно показане на Рис. 10. Призначення прав виконується для поточного за списком користувача, ім'я якого відображається в найменуванні вікна.
У цьому вікні є список прав на проекти і аналогічна попередній настройці група прапорців User rights (Права користувача), в якій призначаються ці права. Має рацію в цьому списку відображаються ті ж, що були призначені в попередній настройці або встановлені за умовчанням при реєстрації користувача. У цьому вікні можна змінити або додати права на проекти. Для цього служать кнопки:
Add Assignment (Додати призначення) — дозволяє додати або відредагувати права доступу користувача;
Delete Assignment (Видалити призначення) — видаляє призначення прав доступу користувача.
При додаванні прав викликається діалогове вікно, аналогічне вікну призначення має рацію для проекту (Рис. 9), за винятком наявності списку прав користувачів. Дії тут такі ж, тобто для призначення прав доступу необхідно в області User rights встановити відповідні цим правам прапорці. Для видалення досить підтвердити факт видалення прав користувача на проект.
Рис. 10. Діалогове вікно Assignments for для індивідуального настроювання прав користувачів на проекти в базі даних
Якщо вводяться користувачі з рівними правами, то можна скористатися діалоговим вікном копіювання прав користувачів один одному Copy Rights Assignment to (Копіювання призначення має рацію для), яке викликається командою Copy User Rights (Копіювання прав користувача) меню Tools (Сервіс). При цьому для поточного користувача викликається діалогове вікно, показане на Рис. 11.
Рис. 11. Вікно Copy Rights Assignment to для копіювання прав користувачів
Після вибору із списку в цьому вікні користувача с. необхідні мі правами, за допомогою кнопки Сміттю (Копіювати) виконується копіювання прав доступу для вибраного користувача, ім'я якого знаходиться в заголовку вікна.
Робота з даними
Основна робота при адмініструванні бази даних SourceSafe пов'язана з частковою або повною архівацією даних, а також їх відновленням при необхідності. Для цих цілей в SourceSafe існують два майстри:
Archive Wizard (Майстер архівації)
Restore Wizard (Майстер відновлення даних)
Для запуску майстра Archive Wizard виконаєте команду Archive Projects (Архівація проектів) меню Archive (Архів). Робота майстра проста, інтуїтивно зрозуміла і не вимагає окремого опису. Мета роботи майстра Archive Wizard полягає в створенні спеціального архівного файлу з розширенням ssa, в який записуються проекти з бази даних.
Зауваження
Заздалегідь для зберігання архівних файлів бажано створити окремий каталог з обмеженим доступом для користувачів. Періодичність архівації визначається надійністю роботи системи і швидкістю внесення змін в проекти виконавцями. Процес цей достатньо простій і не займає багато часу. При інтенсивній роботі над проектом можна виконувати архівацію щоденно силами адміністратора системи.
Відновлення з архіву виконується за допомогою майстра Restore Wizard, який запускається командою Restore Projects (Відновлення проектів) меню Archive (Архів). Цей майстер виконує запис проектів з архівного файлу в базу даних програми SourceSafe.
Робота користувача в SourceSafe.
Після того, як користувач введений адміністратором в список користувачів, визначені його права доступу до проектів, він може приступати до роботи над файлами проекту. Для роботи користувача з проектами і файлами, що входять в проект, служить вікно провідника програми SourceSafe (Рис. 12), що складається з перерахованих нижче основних елементів.
Список проектів — відображає дерево проектів.
Список файлів проектів — відображає вміст проектів, тобто файли, що входять до складу проектів.
Поле для виведення підсумкової інформації по виконанню дій — відображає інформацію про виконувані дії.
Меню — містить команди на виконання дій SourceSafe.
Панель інструментів провідника — містить набір кнопок для виконання команд по роботі з проектами і файлами проектів.
Верхній рядок стану — відображає поточний проект і робочу бібліотеку проекту.
Нижній рядок стану — містить ім'я поточного користувача, режими роботи, кількість файлів в списку.
Рис. 12. Вікно провідника SourceSafe для роботи користувачів
На панелі інструментів вікна Провідника представлені кнопки, призначення яких описане в табл. 1.
Таблиця 1. Кнопки панелі інструментів вікна Провідника
Кнопка
Назва
Призначення
Create Project (Створити проект)
Створює новий проект
Add Files (Додати файли)
Додає файли в проект
Label Version (Мітка версії)
Встановлює мітку версії проекту
Delete Files/Project (Видалити файл/проект)
Видаляє файл або проект
Get Latest Version (Отримати останню версію)
Показує останню версію файлів проекту
Check Out Files/Project (Заблокувати файлы/проект)
Блокує файли проекту і копіює їх у вказане місце для редагування
Check In Files/Project (Звільнити файлы/проект)
Звільняє блоковані файли і знімає блокування в базі даних
Undo Check Out (Зняти блокування)
Знімає блокування файлів
Share Files (Доступність файлів)
Встановлює сумісний доступ до файлів проекту
View File (Проглядання файлу)
Запускає середовище проектування і завантажує в нього файл для перегляду
Edit File (Правка файлу)
Запускає середовище проектування і завантажує в нього файл для роботи з ним. При цьому виконується Check Out (Блокування) цього файлу
File/Project Difference (Відмінності файлу/проекту)
Виконує порівняння файлів і видає звіт про знайдені відмінності
Show Properties (Проглядання властивостей)
Показує властивості вибраного файлу або проекту
Show History (Проглядання історії)
Показує історію створення і роботи над вибраним файлом або проектом
Find in Files (Пошук у файлах)
Пошук заданого тексту у файлах
Set Working Folders (Установка робочої теки)
Встановлює робочий каталог. При цьому викликається діалогове вікно установки робочого каталога
Refresh File List (Оновлення списку файлів)
Оновлює список файлів
Help (Довідка)
Викликає довідкову систему SourceSafe
Набір кнопок, розташованих на панелі інструментів за умовчанням, можна змінити, додати необхідні кнопки, приховати непотрібні. Для цього використовується діалогове вікно настройки панелі інструментів (Рис. 20.13), що відкривається при виборі команди Customize Toolbar меню Tools. У діалоговому вікні Настройка панелі інструментів розташовано два списки. Набір кнопок на панелі інструментів задається списком Панель інструментів. У нього можна додати кнопки із списку доступних кнопок Наявні кнопки. Для зміни порядку проходження кнопок на панелі інструментів призначені кнопки Вгору і Вниз вікна настройки.
Рис. 13. Діалогове вікно настройки панелі інструментів вікна Провідника SourceSafe
Ієрархія в SourceSafe
У SourceSafe підтримується строга ієрархія проектів і файлів проекту, твірна дерева проектів. Коренем завжди є тека з позначенням $/. Далі в ієрархії слідують проекти і файли проектів.
У ієрархічному дереві підтримується спадкоємство прав доступу, тобто права доступу від вищестоящих рівнів передаються нижчестоячим. При цьому права нижчестоячих рівнів можна змінити.
Робота з проектами
Як було сказано вище, всі проекти відображаються в лівому списку Про-водника SourceSafe. При роботі з проектами можна виконати всі доступні для користувача дії. Наприклад, якщо користувач має все має рацію, то можна додавати, видаляти, редагувати проект.
Для створення нового проекту слід визначити його місце в дереві, для цього необхідно вибрати в дереві той проект, усередині якого знаходитиметься новий проект. Якщо це проект першого рівня ієрархії, вибирається корінь дерева, тобто тека із значком $/ — самий верхній рівень ієрархії. Після цього слід виконати команду Create Project (Створити проект) меню File (Файл). При цьому викликається вікно Create Project in (Створити проект) (Рис. 14), в поля якого вводять найменування і примітки з коротким описом проекту, використовуючи поля Project (Проект) і Comment (Коментар).
Рис. 14. Вікно створення нового проекту в SourceSafe
Після того, як проект внесений до бази даних SourceSafe, можна працювати з його файлами. Для початку необхідного додати в проект всі вхідні в нього файли.
Робота з файлами проекту
Запис (додавання) файлів проекту в базу даних SourceSafe виконується командою Add Files (Додати файли) меню File (Файл) або однойменною кнопкою на панелі інструментів. При цьому викликається діалогове вікно Add File to (Додати файл) (Рис. 15) з вказівкою проекту, в який додаються файли.
Зауваження
Типи файлів в списку List, що розкривається, files of type (Список типів файлів) діалогового вікна Add File to відповідають настройці типів файлів по групах в режимах настройки SourceSafe на вкладці File Types (Типи файлів) діалогового вікна SourceSafe Options.
Отже, всі проекти внесені до бази даних програми SourceSafe, а всі файли проектів записані у відповідні ним проекти бази. Що відбувається потім?
Далі SourceSafe стає організатором роботи над проектами. Користувачі копіюють файли з бази SourceSafe в свої робочі теки. При цьому такі файли блокуються в базі даних, тобто на файли ставиться мітка, як показано на Рис. 16. При цьому інший користувач не може скопіювати блокований файл для редагування до тих пір, поки файл (його нова версія) не повернений в базу SourceSafe і з нього не знято блокування.
Рис. 15. Вікно для додавання файлів проекту в базу даних SourceSafe
Рис. 16. Блокування файлів, скопійованих для редагування
Копіювання файлів і їх блокування виконуються автоматично за допомогою команди Check Out (Блокування) меню SourceSafe або відповідною кнопкою панелі інструментів. Блокування можна виконати як для всіх файлів проекту (при цьому необхідно вибрати проект в дереві), так і для окремих файлів проекту (для цього необхідно вибрати файл, що цікавить, або групу файлів). Як видно з Рисюнка, система забезпечує контроль дати і імені користувача, що виконав блокування.
При виконанні блокування викликається діалогове вікно Check Out (Блокування) (Рис. 17) для вибору теки, в яку буде записана копія файлу для редагування. У цьому ж вікні можна ввести невеликий коментар про виконані зміни, про мету блокування файлу.
Рис. 17. Діалогове вікно Check Out блокування файлу
Необхідно відзначити, що при від'єднанні від бази даних SourceSafe всі мітки блокування залишаються і зняти їх може тільки той користувач, який узяв файли проектів на редагування.
Якщо випадково блокований не той файл, який потрібний, то виправити таку помилку можна за допомогою команди Undo Check Out (Відмінити блокування) меню SourceSafe.
Після завершення роботи з файлами проекту вони повертаються в базу даних SourceSafe командою Check In (Звільнення) з меню SourceSafe або за допомогою однойменної кнопки на панелі інструментів, і значок блокування з них знімається.
Зауваження
Аналогічно блокуванню, звільнення можна виконати як відразу для всіх файлів проекту, так і для одного або групи файлів.
При виконанні звільнення викликається діалогове вікно Check In (Звільнення), в якому можна додатково пояснити внесені зміни у файл (Рис. 18). Якщо встановити прапорець Remove local сміттю (Видалити локальну копію) цього діалогового вікна, то копія файлу в робочій теці проекту буде видалена. Прапорець Keep checked out (Зберегти блокування) виконує повернення копії файлу в базу із збереженням мітки блокування на нім.
Дуже важливо зберегти хронологію роботи над проектом. Для проглядання цих відомостей необхідно викликати для вибраного проекту діалогове вікно History of Project (Хронологія проекту) командою Show History (Показати хронологію) меню Tools (Сервіс) або натиснути однойменну кнопку на панелі інструментів (Рис. 20). При цьому заздалегідь буде викликано діалогове вікно Project History Options (Режими хронології проекту) настройки режиму проглядання хронології (Рис. 19), в якому указуються режими перегляду і, зокрема, інтервал дат для вибірки хронології.
Крім того, що у вікні History of Project відображається вся хронологія роботи над проектом, звідси за допомогою кнопки Check Out можна вибрати будь-яку попередню версію файлу.
Рис. 18. Діалогове вікно Check In звільнення файлу
Рис. 19. Режими проглядання хронології проекту
Рис. 20. Хронологія проекту в діалоговому вікні History of Project
SourceSafe в середовищі Visual Basic 6
У середовищі проектування Visual Basic 6 можливостей для роботи з SourceSafe представлені в меню Tools (Сервіс) меню SourceSafe, що розкриваються. Це меню є контекстним, тобто його зміст залежить від полягання проекту в середовищі розробки.
Спочатку, коли немає жодного проекту, тут можна виконати наступні дії:
Створити проект з SourceSafe
Запустити SourceSafe для роботи в базі даних
Виконати настройку роботи SourceSafe в середовищі Visual Basic 6
Для створення проекту необхідно в меню Tools вибрати команду SourceSafe, а потім значення Create Project from SourceSafe (Створити проект з SourceSafe). При цьому викликається вікно Create local project from SourceSafe (Створити локальний проект з SourceSafe), в якому представлено дерево проектів (Рис. 21). Заздалегідь відкриється діалогове вікно для приєднання до бази даних SourceSafe. Після вибору проекту в дереві буде створена копія цього проекту в робочій теці проекту і потім ця копія буде завантажена в середу проектування.
Рис. 21. Діалогове вікно Create local project from SourceSafe для створення проекту
Після зафузки проекту меню SourceSafe поповнюється наступними командами:
Get Latest Version — отримати останню версію
Check Out — виконати блокування файлів
Check In — виконати звільнення файлів
Undo Check Out — зняти блокування
Show History — показати історію проекту
Show Differences — показати різницю версії
SourceSafe Property — властивості програми SourceSafe
Add Files to SourceSafe — додати файли в базу даних SourceSafe
Share Files — призначити сумісне використання файлів
Refresh File Status — відновити стан файлів
База даних SourceSafe запускається за допомогою команди Run SourceSafe меню SourceSafe. Після приєднання до бази можна працювати як при звичайному запуску бази даних.
Настройка спільної роботи з середовищем проектування виконується в діалоговому вікні Source Code Control Options (Параметри управління початковими кодами), показаному на Рис. 22. Це вікно відкривається командою Options (Параметри) меню SourceSafe.
Рис. 22. Діалогове вікно Source Code Control Options управління режимами роботи з початковими текстами
У цьому вікні розташовано чотири списки, що розкриваються, що мають наступне призначення:
Get latest checked-in versions of files when opening а VB project (Отримувати останню версію файлів при відкритті проекту) — встановлювати можливість отримання останньої версії файлів проекту для відкриття його в середовищі проектування;
Check in files when closing VB project (Виконувати звільнення файлів при закритті проекту) — звільняє файли в базі даних при закритті проекту в середовищі проектування;
Add files to source control when adding them to а VB project (Додавати файли в базу SourceSafe при їх додаванні в проект) — автоматично додає нові файли проекту в базу SourceSafe;
Remove files from source control when deleting them from the VB project (Видаляти файли з бази SourceSafe при їх видаленні з проекту) — видаляє файли з бази SourceSafe при видаленні їх з проекту.
У цих списках можна вибрати три значення:
Yes — підтвердження виконання відповідної дії завжди і без запиту;
Ask — попередній запит на виконання дії;
No — відмова від відповідної дії.
Таким чином, Visual Basic 6 спільно з SourceSafe дозволяє організувати групову роботу і уникнути практично всіх конфліктних ситуації, великих проектів, що виникають при розробці, силами групи програмістів, постановників і людей, що тестують приложение.
ВИСНОВОК.
Hа цій лабораторній роботі Навчитись працювати з пакетом MS SourceSafe