Новини високих технологій
» » Git - що таке? Git для початківців: опис

Git - що таке? Git для початківців: опис

21-11-2016, 10:53
1 696
Багато з тих, хто пов'язаний з розробкою програмного забезпечення, чули про Git. Що таке ці три літери? Дуже важливо зрозуміти опис, а також принципи функціонування, щоб в подальшому ефективно використовувати цю систему контролю версій, в якій, на відміну від інших подібних систем, абсолютно інші поняття про інформації, роботі з нею, незважаючи на схожий інтерфейс. Отже, що таке Git?

Опис

Git є розподіленою системою керування версіями розробляються файлів. Створена вона була у 2005 році автором ОС Linux. Ця система здійснює синхронізацію роботи з сайтом, а також зберігає і оновлює зміни в файлах. Це дуже зручний підхід у випадку роботи над проектом декількох розробників. На сьогоднішній день у багатьох відомих проектах використовується саме Git. Що таке використання дає? Наприклад, розробкою операційної системи Android займається велика кількість програмістів. Було б вкрай незручно, якби один з них вносив зміни, а інші про це не знали. Git ж дозволяє всім бути в курсі всіх змін, а в разі помилок повернутися до попередніх версій файлів.


Використання зліпків, а не патчів

Головною відмінністю Git від інших систем контролю версій є те, як вона дивиться на дані. Більша частина програм зберігає інформацію у вигляді списку змін, званих патчами для файлів. Такі системи до збережених даними ставляться як до набору файлів, а також набору змін, які зроблені для кожного файлу, щодо часу. Як зберігає свої дані Git? Що таке є в цій системі, що відрізняє її від інших? Замість патчів, збережені дані тут вважаються набором зліпків маленької файлової системи. Всякий раз, коли користувач фіксує нову версію проекту, система просто зберігає зліпок стану файлів на поточний момент. Щоб підвищити ефективність в тому випадку, коли файл не змінювався, система не зберігає його, а робить посилання на раніше збережений примірник, в який було внесено останні зміни.


Це дуже важлива відмінність від інших систем контролю, яке притаманне Git. Що таке відмінність дає? Git стає схожою на маленьку файлову систему, що володіє дуже потужними інструментами, які працюють поверх неї.

Переважно локальні операції

Для того, щоб здійснювати більшість операцій в Git, потрібні лише локальні ресурси і файли. Це означає, що найчастіше немає необхідності в інформації, знаходиться на інших комп'ютерах, що входять в мережу. Так як всі зміни проекту знаходяться на диску, виконання операцій відбувається з блискавичною швидкістю. Наприклад, для того щоб переглянути історію проекту, її не потрібно завантажувати з сервера. Вона прочитується з локального репозиторія на комп'ютері. Якщо потрібно побачити зміни між версією файлу, яка була зроблена місяць тому, і поточної, можна зробити це дуже швидко, не звертаючись до сервера. Ще локальна робота означає те, що можна багато чого зробити без підключення до мережі. Наприклад, розробник може вносити зміни, перебуваючи в транспорті. У багатьох системах контролю такої можливості немає.

Спостереження за цілісністю даних

Перед тим як зберегти будь-який файл, йому присвоюється індекс у вигляді контрольної суми, обчисленої безпосередньо Git. Що таке контрольна сума? Це значення, яке розраховується за допомогою спеціальних алгоритмів і використовується для того, щоб перевірити цілісність даних при їх зберіганні і передачі. Тут неможливо щось змінити без відома Git, і це важлива складова філософії системи.

Дані найчастіше додаються

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

Стану файлів

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

Встановлюємо Git

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

Установка Git з исходников

При наявності такої можливості краще використовувати даний варіант, так як буде отримана найсвіжіша версія. Кожне оновлення зазвичай містить безліч корисних поліпшень, які стосуються інтерфейсу користувача. Саме тому, якщо установка з исходников не занадто для вас скрутна, краще віддати перевагу її. Та й більшість дистрибутивів Linux включають в себе застарілі пакети.
Для установки знадобляться необхідні бібліотеки: expat, curl, libiconv, openssl, zlib. Після інсталяції можна завантажити останню версію системи контролю версій, скомпілювати її і встановити.

Установка операційної системі Windows

Якщо у користувача немає Linux, а хочеться використовувати Git, Windows також підтримує цю систему. І встановити її дуже просто. Існує проект msysGit, процедура встановлення якого є однією з найпростіших. Необхідно просто завантажити файл інсталятора, який можна знайти на сторінці проекту в GitHub, а потім запустити його. По закінченні установки на комп'ютері буде дві версії - графічна і консольна.

Первісна налаштування Git

Після того як система контролю встановлена на комп'ютер, потрібно виконати деякі дії для налаштування середовища під користувача. Робиться це раз. При оновленні всі налаштування зберігаються. Їх можна поміняти в будь-який момент. Git включає в себе утиліту git config, що дозволяє робити налаштування і контролювати роботу системи, а також зовнішній вигляд. Дані параметри можуть зберігатися до трьох місцях: У файлі, що містить значення, які є загальними для всіх користувачів і репозиторіїв. У файлі, що містить налаштування певного користувача. В конфігураційному файлі, що знаходиться в поточному репозиторії. Такі параметри діють лише для нього.

Ім'я користувача

В першу чергу після установки необхідно вказати ім'я користувача, а також електронну пошту. Це дуже важливо, так як кожен комміт (збереження стану) містить ці дані. Вони включаються у всі передані коміти і не можуть бути змінені згодом. Якщо вказати опцію –global, такі налаштування треба буде зробити один раз.

Вибір текстового редактора

Після зазначення імені потрібно вибрати редактор, який буде необхідний при наборі повідомлень в Git. За замовчуванням буде використовуватися стандартний редактор операційної системи. Якщо користувач захоче використати інший, потрібно прописати це в налаштуваннях конфігураційного файлу в рядку core.editor.

Перевірка параметрів

Щоб знати основи Git, необхідно вміти перевіряти використовувані настройки. Для цього застосовується команда git config –list. Вона виводить всі доступні параметри, які зможе знайти. Деякі імена налаштувань можуть бути присутні в списку кілька разів. Це відбувається з-за того, що Git зчитує один ключ з різних файлів. В такій ситуації для кожного ключа використовується останнє значення. Є можливість перевіряти значення певних ключів, вписавши в команду замість «--list» - «{key}».

Як створити репозиторій

Досягти цієї мети можна двома способами. Перший полягає в імпорті в систему існуючого каталогу або проекту. Другий – це клонування з сервера вже існуючого сховища.

Створення в даному каталозі

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

Клонування репозиторію

Для отримання копії вже існуючого сховища потрібна команда git clone. З її допомогою Git отримає копію майже всіх даних з сервера. Це стосується всіх версій кожного файлу. Дуже зручна можливість, так як у випадку виходу з ладу сервера програміст зможе використовувати клон на кожному клієнті для повернення сервера в той стан, в якому він був при клонуванні. Це схоже на точку відновлення.

Видалення файлу в Git

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

Скасування змін

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

Підсумки

Тепер у користувача повинно сформуватися уявлення про те, що таке Git, для чого потрібна ця система контролю версій, чим вона відрізняється від інших подібних продуктів. Зрозуміло, що для повного ознайомлення необхідно встановити робочу версію Git з персональними налаштуваннями під себе. Не завадить який-небудь підручник або відеокурс по Git для «чайників», який зможе покроково провести користувача по всіх етапах роботи з системою.
Цікаво по темі
Як відновити на "Андроїд" віддалений файл: інструкція
Як відновити на "Андроїд" віддалений файл: інструкція
Ця стаття відповідає на питання про те, як відновити "Андроїд" віддалений файл. Вона буде корисна тим користувачам, які випадково видалили документ,
Налаштування Rate CS GO
Налаштування Rate CS GO
Сьогодні ми вирішили поговорити про гру Counter-Strike: Global Offensive, в якій є таке поняття, як рейт. Природно, велика частина новачків абсолютно
NFO-файл: чим відкрити простіше всього?
NFO-файл: чим відкрити простіше всього?
Напевно багато користувачів комп'ютерних програм, працюючих під Windows, могли бачити специфічні об'єкти у вигляді файлів з розширенням .nfo.
Додаток або файл неможливо відкрити, використовуючи вбудований обліковий запис Адміністратора: що робити?
Додаток або файл неможливо відкрити, використовуючи вбудований обліковий запис Адміністратора: що робити?
Досить часто при установці оновлень Windows (особливо це стосується версій 8 і 10) користувачі стикаються з неприємною проблемою - що деякі
Додатки для "Андроїда": огляд кращих програм
Додатки для "Андроїда": огляд кращих програм
Сьогодні юзерам доводиться витрачати багато часу, щоб знайти якісне. Дана стаття покликана заощадити час користувача. У ній представлений огляд
Файрвол для «Андроїда»: типи додатків і їх можливості
Файрвол для «Андроїда»: типи додатків і їх можливості
Захист від стеження або збереження конфіденційності абсолютно для всіх комп'ютерних і мобільних пристроїв є нагальною проблемою. Для цього