Вступ до Git: що це таке, і як ним користуватися

Git - це розподілена система контролю версій з відкритим кодом . Тепер це багато слів для визначення Git.

Дозвольте розбити його і пояснити формулювання:

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

Чому потрібна система контролю версій, така як Git

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

Крім того, вимоги в таких проектах часто змінюються. Таким чином, система контролю версій дозволяє розробникам повернутися та повернутися до попередньої версії коду.

Нарешті, іноді кілька проектів, які виконуються паралельно, включають одну і ту ж базу коду. У такому випадку дуже важлива концепція розгалуження в Git.

Почнімо зараз користуватися Git

Замість того, щоб згадувати всі поняття відразу, я поясню поняття Git на прикладі, щоб було легше наслідувати.

Завантажте git

Це посилання містить детальну інформацію про те, як встановити Git у декілька операційних систем:

//git-scm.com/book/en/v2/Getting-Started-Installing-Git

Перевірте, чи встановлено Git, використовуючи таку команду в командному рядку:

git --version

Створіть свій локальний репозиторій Git

На своєму комп’ютері створіть папку для свого проекту. Назвемо папку проекту simple-git-demo.

Зайдіть у папку проекту та додайте до проекту локальне сховище Git, використовуючи такі команди:

cd simple-git-demo git init

git initКоманда додає локальний репозиторій для проекту.

Давайте додамо зараз невеликий код

Створіть файл, що називається demo.txtв папці проекту, і додайте до нього такий текст:

Initial Content

Тут ми будемо демонструвати просто текст замість фактичного коду, оскільки основна увага в цій статті приділяється Git, а не будь-якій конкретній мові програмування.

Постановка та фіксація коду

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

Будь-який файл, який не доданий до індексної області, не буде зафіксований. Це надає розробнику контроль над тим, які файли потрібно фіксувати.

Постановка

Використовуйте таку команду для індексування файлу:

git add demo.txt

Якщо ви хочете додати кілька файлів, ви можете використовувати:

git add file1 file2 file3

Якщо ви хочете додати всі файли всередині папки проекту до проміжної області, скористайтеся наступною командою:

git add .

Використовуйте це обережно, оскільки воно додає всі файли та папки у вашому проекті до проміжної області.

Здійснення

Використовуйте таку команду, щоб зафіксувати файл:

git commit -m "Initial Commit"

“Початкове комітування” - це повідомлення про коміт. Введіть відповідне повідомлення коміту, щоб вказати, які зміни коду були зроблені в цьому конкретному коміті.

Статус Git та журнал Git

Тепер змініть demo.txtфайл і додайте такий фрагмент:

Initial Content Adding more Content

Статус

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

Використовуйте таку команду, щоб побачити стан:

git status

Статус показує, що demo.txtзмінений і ще не знаходиться в зоні постановки.

Тепер давайте додамо demo.txtдо області індексації та зафіксуємо її, використовуючи такі команди:

git add demo.txt git commit -m "demo.txt file is modified"

Журнал

Використовуйте git logдля роздрукування всіх комітів, які були зроблені до цього часу.

Для цього використовується команда:

git log

У журналі відображаються автор кожного коміту, дата фіксації та повідомлення коміту.

Філії

Дотепер ми не створили жодної гілки в Git. За замовчуванням коміти Git переходять у головну гілку.

Що таке гілка?

Гілка - це не що інше, як вказівник на останній коміт у сховищі Git. Отже, в даний час наша головна гілка є покажчиком на другий коміт “demo.txt file is modified”.

Навіщо потрібні кілька гілок?

Для підтримки паралельних розробок потрібні кілька гілок. Зверніться до малюнка нижче, щоб побачити, як працюють гілки.

Спочатку коміти 1 та коміт 2 виконувались у головній гілці. Після коміту 2 створюється нова гілка, що називається «Тест», а фіксація 3 та коміт 4 додаються до гілки тесту.

У той же час до основної гілки додаються різні коміти 3 та коміти 4. Тут ми бачимо, що після коміту 2 здійснюються дві паралельні розробки в 2 окремих гілках.

Тестова гілка та головна гілка тут розійшлися і мають інший код - код із тестової гілки можна об’єднати з гілкою головного за допомогою git merge. Це буде розглянуто пізніше.

Створіть нову гілку в Local

Створіть нову гілку під назвою test, використовуючи таку команду:

git branch test

Ця команда створює testгілку.

Ми все ще перебуваємо в контексті головного відділення. Для того, щоб перейти на test відділення. використовуйте таку команду:

git checkout test

Зараз ми у testфілії.

Ви можете перерахувати всі гілки локально, використовуючи таку команду:

git branch

Зробіть деякі комітети в новій філії

Змініть demo.txt, додавши такий фрагмент:

Initial Content Adding more Content Adding some Content from test Branch

Тепер виконуйте етапи та виконайте такі команди:

git add demo.txt git commit -m "Test Branch Commit"

Це комітування було зроблено в тестовій гілці, і тепер тестова гілка випереджає головну гілку на 1 коміт - оскільки тестова гілка також включає 2 коміти з головної гілки.

Ви можете перевірити історію комітів у Test Branch, використовуючи:

git log

Злиття

На даний момент Test Branch випереджає Master на 1 коміт. Скажімо, зараз ми хочемо, щоб весь код у тестовій гілці був повернутий у головну гілку. Тут git mergeдуже корисно.

Для об'єднання коду з тестової гілки у головну гілку виконайте такі дії:

Спочатку поверніться до головної гілки:

git checkout master

Потім запустіть mergeкоманду:

git merge test

Після запуску цих 2 команд злиття має бути успішним. У цьому прикладі конфліктів немає.

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

Біжи git logзараз, і ви помітите, що майстер також має 3 коміти.

Віддалене сховище Git

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

GitHub

Тут ми будемо використовувати GitHub для віддаленого сховища.

Зайдіть на //github.com/ та створіть обліковий запис.

Після реєстрації на домашній сторінці GitHub натисніть кнопку « Почати проект», щоб створити нове сховище Git. Дайте сховищу ім’я та натисніть «Створити сховище»

Дайте назву як git-blog-demo.

Це створить віддалене сховище в GitHub, і коли ви відкриєте сховище, відкриється сторінка, як на малюнку нижче:

URL-адреса сховища - це виділена частина //github.com/aditya-sridhar/git-blog-demo.git

Для того, щоб вказати локальне сховище на віддалене сховище, використовуйте таку команду:

git remote add origin [repository url]

Git Push

Для того, щоб перенести весь код з локального сховища у віддалене сховище, використовуйте таку команду:

git push -u origin master

Це виштовхує код із головного відділення у локальному сховищі у головне відділення у віддаленому сховищі.

Додаткові команди

Git Pull

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

git pull origin master

Клон Git

git cloneвикористовується для клонування існуючого віддаленого сховища на ваш комп’ютер. Команда для цього:

git clone [repository url]

Вітаємо

Тепер ви знаєте основи використання Git, тому продовжуйте і вивчайте більше!

Незабаром я опублікую ще одну статтю про трохи вдосконаленіші концепції Git. Залишайтеся з нами!

Про автора

Я люблю технології і стежу за технологічними досягненнями. Я також люблю допомагати іншим будь-якими знаннями, які я маю в технологічному просторі.

Не соромтеся зв’язуватися зі мною у своєму обліковому записі LinkdIn //www.linkedin.com/in/aditya1811/

Ви також можете стежити за мною у твіттері //twitter.com/adityasridhar18

Мій веб-сайт: //adityasridhar.com/

Інші повідомлення від мене

Як ефективно використовувати Git