Кожен, хто користується Git, або навіть бачив його, знає, що там є багато термінів і модифікаторів, за якими потрібно стежити.
І вам варто бути в курсі, адже це стало стандартом контролю версій для технічних продуктів сьогодні.
Але замість того, щоб просто очікувати, що ви все це все триматимете в голові, ми створили цей основний ресурс, повний критично важливих команд для вашого посилання, щоб ви могли використовувати Git ефективно та ефективно.
Не супер користувач Git (поки що)? Це абсолютно нормально.
Команди, які ми тут детально розглянемо, варіюються від повсякденних до рідкісних і складних. Як додатковий бонус, до кожної з них додаються поради щодо способів її використання під час розробки проекту.
Ми розпочнемо з інформації про історію Git, а потім завершимо повним керівництвом про те, як ви можете використовувати Git у реальних умовах.
Швидкий огляд: Розуміння Git, GitHub & Контроль версій
Git — це те, що його розробники називають платформою для управління вихідним кодом (SCM). Іншими словами, це система контролю версій. Одна, що є безкоштовною, легкою у використанні, тому є основою багатьох відомих проектів.
Що приводить нас до логічного питання, якщо ви не занурені у світ розробки: Що ж таке контроль версій?
Створення чогось з коду часто вимагає багато спроб, помилок і кроків. А також, у багатьох випадках, співпраці.
Легко перезаписати або втратити важливі елементи, над створенням яких було докладено багато зусиль. Наприклад, якщо ви коли-небудь працювали з колегою в живому Google Doc, ви розумієте, про що ми говоримо.
Інструмент контролю версій зберігає кожну ітерацію вашого прогресу протягом проекту. Це корисно у випадку, якщо ви хочете повернутися до попередньої версії, щоб переглянути та взяти певні елементи для повторного використання — або навіть відновити старішу версію, якщо щось у поточній збірці не працює так, як передбачалося.
Git встановлено локально, тобто він знаходиться на вашому комп’ютері, а не в хмарі. Насправді, вам навіть не потрібно бути підключеним до інтернету під час його використання!
Таким чином, він забезпечує безпечне сховище (часто називають “репо”, яке є місцем для зберігання коду) для розробника, щоб зберігати кожен “чернетку” проекту, над яким він працює.
Git виходить на новий рівень з моделлю розгалуження, за якою він став відомим.
За допомогою Git розробник може створювати різні кодові “гілки”, які виходять з проекту. Ці гілки є по суті копіями основного проекту, який раніше називався “майстер” проектом, але цей термін виводиться з ужитку.
Зміни у гілках не впливають на код основного проекту, доки ви цього не дозволите. Завдяки розгалуженню, розробники можуть експериментувати з новими функціями або усувати помилки. Зміни, зроблені в гілці, не впливають на основний код, доки ви не виконайте дію, що називається «об’єднанням».
Git ідеально підходить для власників веб-сайтів або розробників, які працюють над власними проектами. Але що робити, коли вам потрібно працювати з командою над проектом з програмування?
Познайомтеся з GitHub.
GitHub — це платформа для розміщення репозиторіїв Git.
Іншими словами, це спосіб, як ви можете перемістити свої Git репозиторії з локального комп’ютера в інтернет, зазвичай з метою дозволити людям співпрацювати над ними.
GitHub базується на хмарних технологіях і є комерційним, хоча основні можливості можна використовувати безкоштовно після реєстрації.
Основна функція GibHub полягає в тому, щоб дозволити розробникам спільно працювати над одним проектом в режимі реального часу, віддалено вносити зміни в код, переглядати роботу один одного та оновлювати основний проект.
GitHub підтримує основну функцію Git: запобігання перезапису і збереження кожної версії проекту. Він також включає всілякі додаткові функції та додатки, як-от збільшене місце для зберігання, швидкі середовища розробки, написання коду з використанням ШІ, підтримка аудиту коду та багато іншого. (Ми рекомендуємо переглянути сторінку ціноутворення, щоб побачити все, що пропонується.)
Важливо зазначити, що GitHub – це не єдина послуга в цій сфері. Альтернативи включають Bitbucket, GitLab тощо.
Однак Git та GitHub, звичайно, працюють разом, як арахісове масло та желе, як ви побачите трохи пізніше в цій статті.
Перш за все: повний список усіх команд Git, з якими розробники та технічні команди повинні бути знайомі, щоб досягти успіху в цьому середовищі контролю версій.
Github
GitHub — це хмарний сервіс, який розробники використовують для зберігання свого коду, відстеження нових змін та співпраці з іншими розробниками. Це популярна платформа для спільної реальної роботи над програмними проєктами.
Читати більше21 найбільш використовуваних команд Git, які вам варто знати
Чи готові ви до остаточної шпаргалки Git?
У цьому розділі ми зануримося в команди Git, інструкції, по суті, які вам потрібно знати, щоб успішно використовувати Git. Ми також додамо декілька порад щодо того, як ви можете використовувати кожну з них у проекті.
Професійна порада для максимально ефективного використання цього документа: Натисніть “command + F” на Mac або “Ctrl + F” на Windows, щоб відкрити пошукове вікно та знайти певну команду, якщо ви шукаєте щось конкретне.
git config
git config
— корисна команда для налаштування роботи Git на трьох рівнях: рівень операційної системи (system), рівень конкретного користувача (global) та рівень конкретного репозиторію (local).
Спробуйте git config
з цими діями:
git config --global user.email [your email]
Це команда, яку багато розробників виконують відразу після завантаження Git для налаштування своєї адреси електронної пошти.
git config --global user.name [your name]
Для налаштування вашого імені користувача.
git config --local
Налаштуйте налаштування, специфічні для вашого локального репозиторію. Це перевизначить стандартні конфігурації Git на системному та глобальному рівнях.
git pull
git pull
— це ваша команда для отримання коду з віддаленого репозиторію та завантаження його у ваш локальний репозиторій, який потім буде оновлено, щоб відповідати тому, що ви щойно завантажили.
Цей акт об’єднання є основоположним для використання Git. І це насправді “скорочення” для двох інших команд: git fetch
а потім git merge
.
Ось кілька способів звичайного використання цієї команди:
git pull [remote]
Отримайте специфічний віддалений репозиторій та об’єднайте його з локальним, над яким ви працюєте.
git pull --no-commit [remote]
Ця команда все ще завантажує віддалений репозиторій, але не об’єднує його автоматично.
Оскільки pull є такою основною командою Git, існує безліч способів її використання. Цей посібник з команд Git Branch пропонує ще більше прикладів та деякі нові комбінації, які ви можете спробувати.
git fetch
git fetch
як самостійна команда завантажує коміти з віддалених репозиторіїв у локальні репозиторії. Це дає вам можливість переглядати та модифікувати код інших розробників.
Спробуймо цю команду:
git fetch origin
Завантажує копію віддаленого репозиторію origin та зберігає її локально. Нічого не змінюється та не об’єднується, на відміну від того, що робить git pull
за замовчуванням.
git fetch --all
Отримати дані з усіх віддалених репозиторіїв (включно з origin).
git fetch --shallow-exclude=[revision]
Виключає коміти з певної гілки або тегу.
Тег
Тег WordPress – це стандартна таксономія, яка дозволяє категоризувати ваші публікації. Читачі можуть натиснути на тег публікації, щоб переглянути схожі статті з таким же тегом.
Дізнатися більшеgit merge
Команда git merge
об’єднує гілки (найчастіше дві, але може бути більше) для створення єдиної історії. Git висвітлює конфлікти, які виникають під час об’єднання, щоб ви могли їх виправити.
Опції для цієї команди включають:
git merge [branch name]
Використовуйте це для об’єднання змін з зазначеної гілки у гілку, яку ви використовуєте.
git merge --abort
Зупиніть злиття та відновіть проект до стану до злиття. Ця команда ідеально ілюструє, як Git допомагає підтримувати старі версії коду для захисту прогресу проекту.
git add
git add
— це команда, яку слід використовувати, коли ви готові “зберегти” копію своєї роботи. Вона дуже часто використовується разом з наступною командою — git commit
— оскільки це додає (тобто “фіксує”) збережене в історії проекту.
Ось деякі способи, як ви можете вказати, що зберегти (або “тимчасовий сайт”) за допомогою цього команди:
git add [file]
Це підготовлює всі зміни, які ви зробили до певного файлу, щоб їх можна було включити до наступного коміту.
git add [directory]
Аналогічно вищевказаному, це підготовує зміни в конкретному каталозі до коміту.
git commit
git commit
є другою командою у трійці команд для здійснення та відстеження змін у Git.
Ця команда говорить про збереження будь-яких змін, зроблених за допомогою команди git add
. Не вносити зміни в основний код, а просто безпечно їх утримувати.
Деякі варіанти використання цієї команди включають:
git commit --amend
Модифікує останній коміт замість створення нового.
git commit -m [your message here]
Анотуйте ваш коміт повідомленням, яке вказується в дужках.
git push
git push
завершує цикл співпраці в Git. Він відправляє всі зафіксовані зміни з локальних репозиторіїв до віддалених. З цього моменту інші розробники в проєкті можуть почати працювати з оновленнями. Це протилежно команді fetch.
Ось як це використовувати:
git push [remote] [branch]
Надсилає вказану гілку, її коміти та будь-які приєднані об’єкти. Створює нову локальну гілку в цільовому віддаленому репозиторії.
git push [remote] --all
Відправити всі локальні гілки до вказаного віддаленого репозиторію.
git branch
Створюйте, редагуйте та видаляйте гілки в git за допомогою команди git branch
.
Використовуйте команду branch такими способами:
git branch [branch]
Це створює нову гілку, яку ви можете назвати, замінивши слово в дужках.
git branch -c
Ця команда копіює гілку Git.
git push [remote repo] --delete [ branch name]
Видалення віддаленої гілки Git, назва якої вказана у останніх квадратних дужках.
git checkout
Використовуйте команду git checkout
, щоб переміщатися між гілками у репозиторії, над яким ви працюєте.
git checkout [branch name]
Перейдіть на іншу гілку Git, названу в дужках.
git checkout -b [new-branch]
Одночасно створюйте нову гілку та переходьте до неї. Цей шорткат поєднує git branch
і git checkout [new branch]
.
git remote
За допомогою команди git remote
ви можете переглядати, створювати та видаляти віддалені з’єднання, своєрідні «закладки», до інших репозиторіїв. Це може допомогти вам посилатися на репозиторії у вашому коді, не вдаючись до пошуку їх та використання їхніх повних, іноді незручних назв.
Спробуйте ці віддалені команди:
git remote add [alias] [URL]
Додайте віддалений репозиторій, вказавши його посилання та надавши йому псевдонім.
git remote -v
Отримайте список віддалених з’єднань та додайте URL кожного з них.
git revert
git revert
скасовує зміни, створюючи новий коміт, що інвертує зазначені зміни.
Один із способів (обережно!) використання git revert
є:
git revert [commit ID]
Це скасує лише зміни, пов’язані з конкретним комітом, який було визначено.
git reset
git reset
— це більш ризикована та потенційно постійна команда для скасування комітів.
Ця команда повинна використовуватися лише в локальних або приватних репозиторіях, щоб запобігти можливості переривання роботи тих, хто програмує в віддаленому, публічному репозиторії. Оскільки вона може “залишити сиротами” коміти, які потім можуть бути видалені під час рутинного обслуговування Git, існує реальний ризик, що ця команда може стерти чиюсь кропітку роботу.
Це складна команда, яку слід використовувати обережно, тому перед її першим застосуванням ми настійно рекомендуємо прочитати цей посібник Git Reset від Bitbucket.
git status
git status
надає уявлення про ваш робочий каталог (це місце, де зберігаються всі історичні версії) та зону підготовки (свого роду як «зона, що будується» між каталогом і репозиторієм). За допомогою цієї команди ви можете бачити, в якому стані знаходяться ваші файли.
Є один основний спосіб використання цієї команди:
git status
Перегляньте список файлів, що готуються до коміту, не підготовлених та не відслідковуваних.
git clone
Використовуйте git clone
для створення копії існуючого репозиторію. Це корисно для створення дублікату репо, з яким ви можете експериментувати, не завдаючи шкоди чому-небудь, що є доступним публічно.
Ось декілька варіантів використання цієї команди:
git clone [repository URL] --branch [branch name]
Клонуйте пов’язаний репозиторій, а потім перейдіть відразу до певної гілки в ньому.
git clone [repo] [directory]
Клонуйте конкретний репозиторій у вказану папку на вашому локальному комп’ютері.
git init
Використовуйте команду git init
, щоб створити новий репозиторій Git як підкаталог .git у вашому поточному робочому каталозі. Це відрізняється від git clone
, оскільки може створити новий репозиторій, а не тільки копіювати існуючий.
Найбільш поширені застосування цієї команди включають:
git init
Там, де все починається, ця команда перетворює ваш поточний каталог на репозиторій Git.
git init [directory]
За допомогою цього ви можете перетворити конкретну директорію на репозиторій Git.
git init --bare
Це створює новий порожній репозиторій, з якого не можна робити коміти. Це створює корисний тимчасовий майданчик для співпраці.
git rebase
git rebase
має можливості переписування історії, що допомагають утримувати ваші коміти охайними та чистими.
Це опція, коли вам потрібно інтегрувати оновлення у головну гілку за допомогою швидкого об’єднання, яке показує лінійну історію.
git rebase [target branch name]
Перенесіть вашу перевірену гілку на конкретну цільову гілку.
git rebase [target branch name] -i
Ініціюйте інтерактивне перебазування з вашої поточної гілки на іншу цільову гілку.
Це ще одна складна команда, яку не слід використовувати у публічному репозиторії, оскільки вона може видалити важливі елементи історії проекту. Щоб дізнатися більше про те, як працюють стандартні та інтерактивні версії цієї команди, ми знову рекомендуємо Bitbucket та їхній посібник git rebase.
git diff
«Diffing» — це практика відображення варіацій між двома наборами даних.
Команда git diff
показує відмінності між джерелами даних Git, такими як коментарі, файли тощо.
Варіанти використання цієї команди включають:
git diff --staged
Показує різницю між тим, що збережено в індексі, але ще не зафіксовано.
git diff [commit ID 1] [commit ID 2]
Ця команда порівнює зміни між двома різними комітами.
git tag
Команда git tag
вказує на момент в історії Git, зазвичай це реліз версії. Теги не змінюються, як це роблять гілки.
git tag [tag name]
Використовуйте це для назви тега та зафіксуйте стан репозиторію на той момент.
git tag -d [tag name]
Хочете видалити цей тег? Виконайте цю команду.
git rm
Команда git rm
видаляє файли як з тимчасового сайту, так і з робочого каталогу.
Ось кілька способів спробувати git rm
:
git rm [file]
Це базовий код для підготовки файлу до видалення у наступному коміті.
git rm --cached
Це видаляє файл з тимчасового сайту, але залишає його у робочому каталозі, тому ви все ще маєте локальну копію на випадок, якщо вона знадобиться.
git log
git log
забезпечує, ну, лог усіх комітів в історії репозиторію.
Готові спробувати? Ось ми й починаємо:
git log [SHA]
Secure Hash Algorithm (SHA) – це унікальний ідентифікатор для кожного коміту. Використовуйте цю команду, щоб відобразити певний коміт, а також всі інші коміти, зроблені раніше.
git log --stat
Ця команда показує, які файли були змінені в кожному коміті, кількість доданих/видалених рядків, а також кількість змінених файлів та рядків.
git show
Ця командна стрічка git show
надає деталі про різні об’єкти Git, такі як дерева, теги та коміти.
Ось декілька способів використання цієї команди:
git show [SHA]
Найпростіша з команд git show
, використовуйте SHA, про який ми щойно дізналися вище, щоб показати деталі будь-якого об’єкта.
git show [SHA]:path/to/file
Це покаже конкретну версію файлу, який ви шукаєте, коли включите його SHA.
Все ще вчитеся користуватися Git, маєте питання щодо вищезазначених команд або просто хочете глибше зануритися в навіть більшу кількість варіацій, які ви можете використовувати для маніпулювання вашим кодом тисячами способів?
Ми повинні вказати на посібники з Git від Bitbucket як на чудовий, глибокий та взаємопов’язаний ресурс, який може допомогти вам досягти більшості цілей, пов’язаних з Git.
І вам слід йти. Адже відкрите програмне забезпечення та технологія Git, яка стоїть за більшістю цього, це майбутнє бізнесу.
Команди у реальному житті: як розробляти на WordPress за допомогою Git + GitHub
Ми щойно представили вам багато можливо нових термінів та хитрощів.
Якщо ви не дуже занурені у Git, може бути важко зрозуміти, як усе це може об’єднатися і працювати в реальній ситуації.
Отже, ми завершимо огляд тим, як використовувати Git і GitHub для налаштування розробки на вебсайті WordPress.
1. Встановіть WordPress.org
Спочатку про частину WordPress.
Ви збираєтеся встановити WordPress.org (дізнайтеся різницю між WordPress.com & WordPress.org, якщо ви не знайомі) і створити локальне тимчасове середовище на вашому комп’ютері.
Якщо у вас ще немає чудового процесу для цього, нам подобається WP-специфічний інструмент розробки від Local.
2. Встановіть Git
І ось настав час для частини Git.
Встановіть Git, якщо ви ще цього не зробили. Знайдіть останню версію на сайті Git.
Багато комп’ютерів Mac та Linux вже мають встановлений Git. Перевірте свій, відкривши інтерфейс командного рядка (наприклад, Terminal на Mac або Git Bash на Windows) і введіть першу команду цього навчального посібника:
git --version
Якщо Git встановлено, ви отримаєте номер версії. Якщо ні, цей посібник з встановлення Git допоможе вам розпочати.
3. Створіть локальний репозиторій за допомогою Git
Тепер ми створимо ваш локальний репозиторій Git.
Отримайте доступ до папки теми вашого WordPress (у цьому прикладі Twenty Twenty-One) за допомогою цієї команди:
cd/Users/[you]/Documents/Websites/[website]/wp-content/themes/twentytwentyone
Замініть [you] та [website] на назви ваших власних папок. Після цього ініціалізуйте цей каталог як репозиторій за допомогою цієї команди:
git init
Щоб додати кожен файл у папці до індексу, введіть:
git add
Здійсніть збереження ваших змін з позначкою, яка допоможе організувати вашу історію з цією командою:
git commit -m “first commit"
Ваш локальний репозиторій налаштовано!
4. Створіть віддалений репозиторій з GitHub
На цьому етапі вам слід створити GitHub акаунт, якщо у вас його ще немає.
Після створення та входу в систему ви можете створити віддалений репозиторій з вашої панелі керування GitHub.
Коли ви закінчите виконувати кроки для налаштування вашого нового проекту, прийшов час завантажити вашу тему WordPress у ваш новий віддалений репозиторій у GitHub.
5. Додати проект WordPress до GitHub (Навчання відправляти)
Використовуйте ці команди в Git для вивантаження вашої теми WordPress у GitHub:
git remote add origin [repo URL]
git push -u origin master
Замініть URL у дужках на посилання на репозиторій, який ви щойно налаштували в GitHub.
Далі вас попросять ввести ваше ім’я користувача та пароль GitHub.
Одразу після цього файли, які були додані до вашого локального репозиторію, будуть передані до вашого репозиторію на GitHub.
6. Опціонально: Отримання (також відоме як “Pull”) оновлень
Тепер, коли ви відправили зміни з вашого локального репозиторію до віддаленого репозиторію на GitHub, останнє, що вам потрібно вивчити, — це як отримувати зміни, щоб ви могли робити навпаки — додавати оновлення з віддаленого репозиторію до вашого локального.
Звичайно, якщо ви працюєте самостійно над проектом з кодування, вам не потрібно виконувати цей крок. Однак, корисно знати це, оскільки це стає необхідним відразу ж, як тільки ви починаєте співпрацювати з командою, яка вносить та виконує оновлення.
Отже, ми виконаємо оновлення локально за допомогою команди fetch:
git fetch [URL]
Не забудьте замінити [URL] на посилання на репозиторій, з якого ви здійснюєте вилучення.
З цим зміни з GitHub копіюються на ваш локальний репозиторій, тому обидва репозиторії стають однаковими. Ви синхронізовані та готові працювати над останньою версією проекту!
Вам досі потрібна допомога з Git?
Для більш детального ознайомлення з вищезазначеним процесом, ознайомтеся з нашим повним керівництвом на Як використовувати GitHub для розробки WordPress.
Або, ще краще, залучіть наших експертів з розробки в DreamHost.
Дозвольте нам займатися разовими налаштуваннями сайту або повним управлінням сайтом, щоб ваша команда могла повернутися до розробки та управлінської роботи, яка сприяє просуванню вашого бізнесу вперед.
Ви мрієте, ми програмуємо
Скористайтеся понад 20-річним досвідом програмування, коли вибираєте нашу послугу Веб-розробки. Просто дайте нам знати, чого ви хочете для вашого сайту — ми піклуємося про все інше.
Дізнатися більше