Новини високих технологій
» » Створення Pull Request в Git

Створення Pull Request в Git

29-12-2018, 20:19
248
Git — система контролю версій, інструмент спільної розробки програмного продукту. Будь-яка командна розробка програмного забезпечення потребує зручному інструмент для відстеження виконаної роботи та внесених змін, фіксації відповідальних за корекцію, створення можливості узгодження напрацювань або відкату у разі помилок. Git незамінна, тому що: Зберігає історію розробки. Контролює права доступу до спільного коду. Забезпечує контроль версій програмного продукту.
Git розроблена Лінусом Торвальдсом з метою спростити створення ядра Linux. Існує кілька способів управління проектом через Git: можна використовувати веб-сервіси, такі як GitHub, або завантажити графічний Git-клієнт. Існує кілька безкоштовних клієнтів для будь-яких операційних систем, наприклад, SmartGit. Так як ядро Git — це пакет програм для командного рядка, їм також зручно користуватися безпосередньо з цієї локації. Функціонал буде однаковий як у роботі з веб-сервісом, так і в графічному клієнта. Новачкам рекомендується заглиблюватися у вивчення консольної версії - так набагато швидше прийде розуміння команд і внутрішньої структури.


Далі ми докладно розберемо одну з команд Git - Pull Request. Pull request — це пропозиція щодо зміни репозиторію. Даний механізм використовується в загальній роботі над програмними продуктами. Дозволяє скоординувати діяльність розробників і уникнути плутанини. Будь-який, хто захоче змінити або доопрацювати існуючий проект, повинен зробити наступні кроки.

Git: як зробити pull request

Команда Fork — створити локальну копію робочого репозиторію. Доопрацювати або змінити свою копію. Команда Pull request — запропонувати зміни в коді власнику репозиторію. Команда Merge — за допомогою неї власник репозиторію схвалює зміни. В системі Git pull request можливо створити двома способами. Перший - через консоль, другий - використовуючи можливості веб-сервісу, на якому розташований ваш репозиторій. Pull Request - це "фіча" виключно Git-клієнта GitHub, яка спирається на консольну команду request pull. Якщо необхідно зробити pull request через консоль, необхідно web API додаток, наприклад hub. Робити pull request для GitHub з десктопного програми можна, якщо воно підтримує GitHub API.


Веб-сервіс Git: create pull request

Щоб запропонувати власнику репозиторію зміни в проекті, необхідно: Зайти в гілку, що містить вихідний файл. Натиснути New pull request. Якщо зміни були зроблені — відкриється вікно Comparing changes. В ньому можна уточнити шлях, з якої гілки якого репозиторію і куди необхідно відправляти зміни. Натиснути Create pull request. Бажано уточнити в відповідних полях, які зміни були зроблені. Тепер власник репозиторію побачить у вкладці Pull requests повідомлення про зміни. Власник у свою чергу може виконати в репозиторії Git "merge pull request". Це внесе зміни, запропоновані розробником з основною гілкою проекту.
Також досить зручно використання консольного клієнта Git. Pull Request робиться через веб-сервіс, якщо не встановлено GitHub API, нижче буде показано алгоритм внесення змін у віддалений репозиторій. Для внесення змін у віддалений репозиторій через консоль після корекції коду необхідно ввести наступні команди:
Команда git add NewFile.cxx — додаємо новий файл в локальний репозиторій. Команда git commit -a -m commit message - створюємо комміт, в commit message уточнюємо зміни в проекті. Команда git push origin — внесення змін у віддалений репозиторій (необхідно підтвердити свої логін і пароль). Далі необхідно також скористатися веб-версією Git, на якій зберігається ваш віддалений репозиторій, і створити pull request, використовуючи вище керівництво.

Merge

В Git Merge pull request - це команда злиття гілки розробки feature з основною віткою (master). Існує два патерну злиття: Справжнє злиття. Відбувається, коли необхідно внести декілька змін в основну гілку розробки. Тобто в гілці master створюється новий комміт, який посилається на кілька таких же атрибутів з feature. Перемотування. Якщо історія комітів вийшла без розгалужень, то покажчик master перемотується вперед, і встановлюється на той, на який вказувала гілка feature.

Робота з Git

При роботі з Git завжди важливо пам'ятати, що є два репозиторію - локальний і віддалений. Локальний створюється на машині в розробника після команди clone, наприклад, якщо розробник хоче приєднатися до роботи над проектом. Тобто з системою контролю версій можна працювати і без інтернет-з'єднання, тільки команди pull і push зажадають зв'язку з віддаленим сховищем. Локально в Git "pull request" зробити, звичайно ж, неможливо. Операція Pull здійснює злиття, якщо історії віддалено і локально розрізняються. Операція Push відправляє всі зміни, що відсутні у віддаленому сховищі. Якщо у віддаленому сховищі виявляються нові коміти, то операція закінчиться невдачею. Тобто локально у розробника присутній гілка master, яка представляє з себе останнє редагування, і гілка origin/master — це стан віддаленого сховища після останньої операції Pull або Push.
Цікаво по темі
Git remote: опис, порядок роботи, репозиції
Git remote: опис, порядок роботи, репозиції
Популярна система контролю версій Git дає кожному розробнику власну копію репозиції проекту або репозиторію, тобто сховища, в комплекті зі своєю
Github: що це за програма?
Github: що це за програма?
Якщо ви тільки починаєте створювати сайти самостійно і знайомитеся з кодом, можливо, ще не чули про GitHub.
Github - що це таке? Як працювати з сайтом github.com?
Github - що це таке? Як працювати з сайтом github.com?
GitHub — що це таке? Даний ресурс — це веб-платформа для управління версіями і спільної роботи для розробників програмного забезпечення.
Основні Git команди: шпаргалка
Основні Git команди: шпаргалка
Розбір і визначення того, що таке розподілена система контролю версій Git. Коротка інструкція по установці. Шпаргалка по основним і додатковим
Помилка 400 (Bad Request) - що це, і як її усунути
Помилка 400 (Bad Request) - що це, і як її усунути
Інтернет-серфери дуже часто стикаються з проблемою того, що замість очікуваної сторінки при відкритті ...
Програма для створення 3D-моделей: огляд декількох інструментів
Програма для створення 3D-моделей: огляд декількох інструментів
У статті представлений огляд декількох редактори тривимірної графіки. Такі програми використовуються як початківцями моделистами, так і