Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



Версії проекту, теги

Система управління версіями забезпечує зберігання усіх, що існували варіантів файлів і, як наслідок, усіх варіантів проекту в цілому, що мали місце з моменту початку його розробки. Але саме поняття «версії» у різних системах може трактуватися двома різними способами.

Одні системи підтримують версійність файлів. Це означає, що будь-який файл, що з'являється в проекті, отримує власний номер версії (зазвичай - номер 1, умовної «нульової» версією файлу вважається порожній файл з тим же ім'ям). При кожній фіксації розробником змін, які зачіпають файл, відповідна частина фіксованих змін застосовується до файлу і файл отримує новий, зазвичай наступний по порядку, номер версії. Оскільки фіксації зазвичай зачіпають тільки частину файлів в репозиторії, номера версій файлів, наявні на один і той же момент часу, з часом розходяться, і проект в цілому (тобто весь набір файлів репозиторія), фактично, ніякого «номера версії» не має, оскільки складається з безлічі файлів з різними номерами версій. Подібним чином працює, наприклад, система управління версіями CVS. Для інших систем поняття «версія» відноситься не до окремого файлу, а до сховища цілком. Новостворений порожній репозиторій має версію 1 або 0, будь-яка фіксація змін призводить до збільшення цього номера (тобто навіть при зміні одного файлу на один байт весь репозиторій вважається зміненим і отримує новий номер версії). Таким способом трактує номера версій, наприклад, система Subversion. Номери версії окремого файлу тут, фактично, не існує, умовно можна вважати таким поточний номер версії репозитория (тобто вважати, що при кожній зміні, внесеному в репозиторій, всі його файли міняють номер версії, навіть ті, які не змінювалися). Іноді, говорячи про «версії файлу» в таких системах, мають на увазі ту версію репозитория, в якій файл був останній раз (до даного нас моменту) змінений.

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

Тег (tag) - це символічна мітка, яка може бути пов'язана з певною версією файлу та / або каталогу в репозиторії. За допомогою відповідної команди всім або частині файлів проекту, що відповідає певним умовам (наприклад, входять у головну версію головної гілки проекту на певний момент часу) може бути присвоєна задана мітка. Таким чином можна ідентифікувати версію проекту (версія «XX.XXX.XXX» - це набір версій файлів репозиторія, що мають тег «XX.XXX.XXX»), зафіксувавши таким чином його стан на деякий бажаний момент. Як правило, система тегів досить гнучка і дозволяє помітити одним тегом і не одночасні версії файлів і каталогів. Це дозволяє зібрати «версію проекту» будь-яким довільним чином. З точки зору користувача системи позначка тегами може виглядати по-різному. В деяких системах вона зображується саме як позначка (тег можна створити, застосувати до певних версіями файлів і каталогів, зняти). В інших системах (наприклад, Subversion) тег представляє собою просто окремий каталог на файловому дереві репозиторія, куди зі стовбура і гілок проекту за допомогою команди копіювання робляться копії потрібних версій файлів. Так що візуально тег - це просто винесена в окремий каталог копія певних версій файлів репозиторія. За угодою в дерево каталогів, відповідне тегу, заборонена фіксація змін (тобто версія проекту, яка надається тегом, є незмінною).


Читайте також:

  1. Версії системи
  2. Витоки культурної інверсії — Франкфуртська школа
  3. Відмінності від стандартної версії
  4. ЕТАПИ РОЗВИТКУ КРИМІНАЛІСТИЧНОЇ ВЕРСІЇ
  5. Життєвий цикл інвестиційного проекту, його стадії, фази, етапи та середовище.
  6. Інверсії температури повітря.
  7. Найменування версії чи епізода
  8. Основні версії походження людини
  9. Оцінка ресурсів проекту, алгоритм їх планування.
  10. Поняття інвестиційного проекту, його основні ознаки та класифікація
  11. Тема 10 :Планування розслідування і слідчи версії




Переглядів: 546

<== попередня сторінка | наступна сторінка ==>
Блокування | Базові принципи розробки ПЗ в VCS

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

  

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.017 сек.