Передмова і налаштування

Wolfman та Dracula найняті на роботу до Universal Missions (відділ космічних служб з Euphoric State University), щоб дослідити, чи можна відправити планетарний посадковий модуль на Марс. Вони хочуть мати можливість працювати над планами одночасно, але у минулому це призводило до проблем. Якщо вони будуть робити зміни по черзі, то кожен витрачатиме багато часу, чекаючи, поки інший закінчить, а якщо вони будуть працювати над власними копіями та відсилати файли туди й назад електронною поштою, зміни будуть втрачені, перезаписані або продубльовані.

Колега пропонує їм використовувати контроль версій, щоб вправитися з цією своєю роботою. Контроль версій кращий, ніж пересилання файлів туди й назад:

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

  • Оскільки ми маємо ці записи про те, хто зробив які зміни та коли, ми будемо знати, кого запитати, якщо в нас виникне питання пізніше, і, якщо потрібно, повернутися до попередньої версії, так само як за допомогою функції “undo” у редакторі.

  • Коли кілька людей співпрацюють в одному проєкті, можна випадково пропустити або перезаписати чиїсь зміни. Система контролю версій автоматично повідомляє користувачів, коли виникає конфлікт між роботою однієї людини та іншої.

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

Контроль версій - це лабораторний ноутбук цифрового світу: це те, що професіонали використовують, щоб відстежувати тем, що вони зробили, і співпрацювати з іншими людьми. Кожен великий проєкт розробки програмного забезпечення покладається на нього, і більшість програмістів також використовують його і для своїх невеликих завдань. І це не тільки для програмного забезпечення: книги, статті, набори даних, і все, що змінюється з часом або потребує спільного використання, можна і потрібно зберігати в системі контролю версій.

Передумови

У цьому уроці ми використовуємо Git з командного рядка за допомогою оболонки Unix Shell. Очікується деякий попередній досвід роботи з shell, але він не є обов’язковим.

Інсталяція Git


Оскільки декілька уроків Carpentries покладаються на використання Git, перегляньте інструкції щодо встановлення Git для різних операційних систем у цьому розділі шаблону семінару.

Створення облікового запису GitHub


Для того, щоб слідувати епізодам 7 та 8 у цьому уроці, вам знадобиться обліковий запис GitHub.

  1. Перейдіть до https://github.com і натисніть на “Зареєструватися” у верхньому правому куті вікна.
  2. Дотримуйтесь інструкцій, щоб створити обліковий запис.
  3. Підтвердить свою адресу електронної пошти на GitHub.
  4. Налаштуйте багатофакторну автентифікацію (див. нижче).

Багатофакторна автентифікація

У 2023 році GitHub запровадив вимогу, щоб усі облікові записи для додаткової безпеки використовували багатофакторну автентифікацію (2FA). Існує кілька варіантів налаштування 2FA, які наведено тут:

  1. Якщо ви вже використовуєте програму автентифікації, наприклад Google Authenticator або Duo Mobile на вашому смартфоні, додайте до цієї програми GitHub.
  2. Якщо у вас є доступ до смартфону, але ви ще не використовуєте програму автентифікації, установіть її та додайте до неї GitHub.
  3. Якщо у вас немає доступу до смартфону або ви не хочете встановлювати програму автентифікації, у вас є два варіанти:
    1. налаштувати 2FA за допомогою текстового повідомлення (перелік країн, де підтримується автентифікація за допомогою SMS), або
    2. використовувати апаратний ключ безпеки як YubiKey або ключ Google Titan.

Додаткову інформацію про налаштування 2FA наведено у документації GitHub.


Підготовка вашого робочого каталогу


Ми будемо працювати в каталозі Desktop, тому переконайтеся, що ви зміните робочий каталог на Desktop за допомогою:

BASH

$ cd
$ cd Desktop