- Чи потрібно продактам користуватися Git у терміналі?
- Здебільшого ні. Усе, чого вчить наш курс з Git, відбувається у вебінтерфейсі GitHub, від читання історії до revert pull request. Основні команди Git знадобляться, коли термінал таки з'являється: розробник надсилає вам команду, у вас є локальна копія репозиторію або ви хочете самі запустити pull request. Для кожної команди, яка має відповідник у браузері, його показано.
- Чим відрізняються git revert і git reset?
- git revert скасовує коміт, додаючи новий коміт зі зворотною зміною; історія зберігає обидва, тож це безпечно навіть у спільній гілці на кшталт main. git reset переносить вашу гілку назад до попереднього коміту; з --hard він ще й викидає незакомічену роботу, а в спільній гілці переписує історію для всіх. Якщо сумніваєтеся, робіть revert.
- Як перевірити, чи виправлення вже вийшло в релізі?
- Знайдіть хеш коміту з виправленням (на змердженому pull request) і запустіть з ним git tag --contains. Показані теги це релізи, які його містять; порожній список означає, що зміну змерджено, але ще не випущено. На GitHub сторінка коміту показує ті самі теги під повідомленням коміту.
- Чи безпечно запускати git pull?
- Зазвичай так. Він приносить останні коміти вашої гілки з GitHub і мерджить їх у вашу папку, тож ваші файли змінюються. Якщо ви та хтось інший редагували ті самі рядки, він зупиниться на конфлікті, який ви розв'язуєте або скасовуєте через git merge --abort. Щоб лише подивитися, що нового, запустіть git fetch: він нічого не змінює.
- Що робить force push і чому розробники уникають його в спільних гілках?
- Звичайний push лише додає коміти. Force push замінює гілку на GitHub вашою версією, тож коміти, яких у вашій версії немає, з неї зникають, а всім, хто на них спирався, доводиться лагодити свої копії. Тому команди захищають main від нього і використовують --force-with-lease лише у власних гілках.
- Чим Git відрізняється від GitHub?
- Git це інструмент контролю версій: він записує історію проєкту на будь-якому комп'ютері. GitHub це сайт, який зберігає Git-репозиторії й додає до них pull requests, рев'ю, issues і релізи. Команди git працюють з будь-яким хостингом; команди gh і шляхи в браузері на цій сторінці стосуються GitHub.
- Що означають слова в кутових дужках?
- Це заповнювачі. У git show <commit> замініть <commit> справжнім хешем, наприклад 3f9a2c1, і приберіть дужки: git show 3f9a2c1. Вони лишаються англійською в обох мовах, бо саме так їх пишуть розробники.
- Чи зберігає тренажер мої відповіді?
- Лише в цьому браузері: скільки разів ви правильно чи неправильно відповіли на кожну ситуацію, кількість раундів і найкращий результат. Жодних відповідей, жодного тексту, нам нічого не надсилається. «Скинути прогрес» очищає все, і кілька секунд можна натиснути «Скасувати».