Як зробити перший запит на витяг на GitHub

Що таке форкінг?

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

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

Що таке запит на витяг?

Запити на витягування - це спосіб, яким ми робимо внесок у групові проекти або проекти з відкритим кодом.

Наприклад, користувач Гаррі розгалужує сховище ThanoshanMV і вносить зміни до цього сховища. Тепер Гаррі може зробити запит на виклик ThanoshanMV, але ThanoshanMV повинен прийняти або відхилити його. Це все одно, що сказати: "ТаношанМВ, ти не міг би внести мої зміни?"

Що означає внести свій внесок

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

Як зазначається в керівництві з питань хаотичності ІТ-фірми 99xtechnology, ми можемо зробити внесок у проект з відкритим кодом наступними способами:

  1. Проектування: Ви можете створити макети проекту, щоб поліпшити його зручність використання, покращити навігацію та меню за проектом на основі дослідницьких програм користувачів, створити зображення для логотипів або футболок та надати керівництво стилем для проекту.
  2. Написання: Ви можете написати та вдосконалити документацію проекту або перекласти документацію, створити інформаційний бюлетень для проекту або написати навчальні посібники для проекту та підготувати основні моменти зі списку розсилки, або створити папку з прикладами, що показують, як використовуються проекти.
  3. Організація: Ви можете зв’язати повторювані випуски, запропонувати нові ярлики випусків, запропонувати закрити старі відкриті випуски та задати запитання щодо нещодавно відкритих питань, щоб рухати дискусію вперед.
  4. Допоможіть іншим: дайте відповіді на запитання щодо відкритих питань, перегляньте код на подання інших людей і запропонуйте наставник іншому автору
  5. Кодування: Допоможіть вирішити будь-які відкриті проблеми, запитайте, чи можете ви надати нові функції та вдосконалити інструментарій та тестування.

Давайте зробимо перший запит на витягування!

Якщо ви не дуже добре знайомі з Git & GitHub, перейдіть до огляду Посібника для початківців Git & GitHub.

1. Розгалужте сховище

Розкрийте сховище, натиснувши кнопку вилки у верхній частині сторінки. Це створить екземпляр всього цього сховища у вашому обліковому записі.

2. Клонуйте сховище

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

Щоб клонувати, натисніть кнопку клонування та скопіюйте посилання.

Відкрийте термінал і запустіть наступну команду. Він клонуватиме сховище локально.

$ git clone [HTTPS ADDRESS]

Зараз ми створили копію головної гілки з головного сховища онлайн-проектів.

Нам потрібно перейти до цього клонованого каталогу, виконавши цю команду:

$ cd [NAME OF REPOSITORY]

3. Створити гілку

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

Назва філії має бути коротким і відображати роботу, яку ми робимо.

Тепер створіть гілку за допомогою git checkoutкоманди:

$ git checkout -b [Branch Name]

4. Внесіть зміни та скоюйте їх

Внесіть суттєві зміни до проекту та збережіть його.

Потім виконайте git status, і ви побачите зміни.

Додайте ці зміни до щойно створеної гілки за допомогою git addкоманди:

$ git add .

Тепер зафіксуйте ці зміни за допомогою git commitкоманди:

$ git commit -m "Adding an article to week 02 of articles of the week"

5. Натисніть зміни на GitHub

Для того, щоб внести зміни до GitHub, нам потрібно визначити ім'я пульта.

$ git remote

Для цього сховища ім’я пульта дистанційного керування - “origin”.

Визначивши ім’я пульта, ми можемо сміливо надсилати ці зміни до GitHub.

git push origin [Branch Name]

6. Створіть запит на витягування

Перейдіть до свого сховища на GitHub, і ви побачите кнопку «Порівняти та витягнути запит» і натисніть його.

Будь ласка, надайте необхідну інформацію про те, що ви зробили (Ви можете посилатися на проблеми, використовуючи "#"). Тепер подайте запит на витяг.

Вітаємо! Ви зробили свій перший запит на витяг.  

Якщо ваш запит на витяг буде прийнято, ви отримаєте електронне повідомлення.

7. Синхронізуйте розгалужену головну гілку

Перш ніж надсилати запити на витягування до оригінального сховища, вам потрібно синхронізувати сховище до оригінального.

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

Виконайте наступні кроки, щоб оновити / синхронізувати ці зміни до вашої головної гілки:

  1. Спочатку перевірте, в якій філії ви перебуваєте.
$ git branch

У ньому буде перераховано всі гілки, а зелена відображатиме поточну чи активну гілку.

2. Переключіться на головну гілку.

$ git checkout master

3. Додайте оригінальне сховище як сховище вище.

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

$ git remote add upstream [HTTPS]

Тут [HTTPS] - це URL-адреса, яку потрібно скопіювати зі сховища власника.

4. Завантажте сховище.

Отримати всі зміни з вихідного сховища. Фіксації до вихідного сховища зберігатимуться в локальній гілці, що називається upstream / master.

$ git fetch upstream

5. Об’єднайте його.

Об’єднайте зміни з висхідного / головного в локальну гілку головного. Це дозволить синхронізувати головну гілку вашої вилки з репозиторієм вище, не втрачаючи локальних змін.

$ git merge upstream/master

6. Натисніть зміни на GitHub

На цьому етапі ваша локальна гілка синхронізується з головною гілкою оригінального сховища. Якщо ви хочете оновити репозиторій GitHub, вам потрібно внести зміни.

$ git push origin master

ПРИМІТКА. Після синхронізації розгалуженої головної гілки ви можете видалити цей пульт, якщо хочете. Але вам також потрібно буде оновити / синхронізувати свій репозиторій і в майбутньому, тому найкраще зберігати його.

$ git remote rm [Remote Name]

8. Видаліть непотрібну гілку

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

$ git branch -d [Branch Name]

Ви також можете видалити його версію на GitHub.

git push origin --delete [Branch Name]

Висновок

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

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

Залишайтеся сильними, залишайтеся позитивними і ніколи не здавайтеся.

- Рой Т. Беннет, Світло в серці

Ця стаття спочатку була розміщена на Medium.

Ви можете зв’язатися зі мною в Twitter і зв’язатися зі мною.

Продовжуйте робити свій внесок у світ з відкритим кодом!