11.11. Управління файлами і конфігураційними редакціями за допомогою Git

Last updated on
14 April 2025

Мета

Використовуйте інструмент контролю версій Git, щоб управляти редакціями файлів і конфігурацій на вашому сайті.

Необхідні знання

Вимоги до сайту

Кроки

Ініціалізація сховища

Виконайте ці кроки один раз, після створення Git-сховища, для підключення вашої локальної директорії до сховища і додавання до нього вихідного файлу.

  1. Відкрийте вікно командного рядка і перейдіть в директорію, де знаходяться файли вашого сайту. Це ваша "верхня"(коренева) директорія.
  2. Визначте де знаходиться ваш кореневий каталог. Якщо core, modules, і themes директорії розташовані в цьому каталозі, тоді ви в вашому кореневому каталозі. Якщо ви використовували Composer для завантаження, тоді ці файли знаходяться всередині web підкаталогу (який є вашим кореневим каталогом).
  3. В текстовому редакторі створіть новий файл з ім’ям .gitignore у верхній директорії (або внесіть необхідні зміни, якщо він вже існує). Цей файл містить список файлів і директорій який Git ігноруватиме (не додавати в репозиторій). наприклад, settings.php файл для вашого сайту не буде додано до Git, тому що він містить відомості про обліковий запис бази даних, і медіафайли, завантажені на ваш сайт (зазвичай sites/default/files) також не повиннs бути в Git - мета полягає в тому, щоб в репозиторії було програмне забезпечення, а не вміст сайту.
  4. Переконайтеся, що наступні рядки знаходяться в файлі .gitignore. Якщо ваш кореневий каталог перестав бути верхньою директорією, перевірте кожну з них, щоб дізнатися, чи потрібен їм префікс. наприклад, sites можливо буде потрібно замінити на web/sites.

    sites/*/settings*.php
    sites/*/files
    config
  5. Введіть наступні команди:

    git init
    git add -A
  6. При бажанні перевірте список файлів, які ви будете додавати в свій репозиторій Git, ввівши цю команду і гортаючи (дуже довгий) список:

    git status
  7. Введіть наступні команди. Ви можете замінити ваше повідомлення комміта для "Initial file add" якщо ви хочете, і вам потрібно буде замінити Git клон URL на свій власний URL у другій команді:

    git commit -m "Initial file add"
    git remote add origin https://gitlab.com/example-name/example-repo.git
    git push -u origin master
  8. Якщо ви використовуєте хостинг сховища GitLab, GitHub або інший хост з онлайн доступом, ви можете перейти на свою сторінку сховища та побачити, що файли там.

Оноалення даних до репозиторію

Використовуйте ці кроки, при оновленні, додаванні або видаленні одного або декількох файлів на вашому сайті, щоб відправити зміни (push) в ваше сховище.

  1. Відкрийте вікно командного рядка, і перейдемо в директорію де знаходяться файли вашого сайту.
  2. Перевірте список файлів, які були додані, змінені або видалені.

    git status
  3. Додатково, для текстових файлів, які були змінені (не зображення), подивіться на відмінності між новою і старою версіями файлу:

    git diff path/to/file.txt
  4. Підготуйте всі зміни для наступного комміту і переконайтеся, що вони внесені:

    git add -A
    git status
  5. Ви можете усунути певний файл з чергового комміту який ви вже додали до стейджу але ще не закомітили, або можете додати інший файл до вже застейджених. Якщо конкретний файл або директорія продовжує додаватися помилково, розгляньте можливість додавання його в .gitignore файл, щоб він був проігнорований в Git. Команди усунення/додавання до стейджу чергового коміту:

    git reset HEAD path/to/file.txt
    git add path/to/file.txt
  6. Виконати коміт і пуш ваших змін. Напишіть щось значуще в повідомленні комміту:

    git commit -m "commit message here"
    git push
  7. Якщо у вас є інші копії вашого сховища, поновіть їх, відкривши командний рядок в директорії кожної копії і запустивши таку команду:

    git pull

Створення копії файлів в вашому сховищі

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

  1. Відкрийте командний рядок терміналу в тому місці, де ви хочете, щоб знаходилися файли.
  2. Введіть наступну команду, замінивши URL вашого клону репозиторія на URL і ім’я підкаталогу dirname, в якому ви хочете їх використовувати:

    git clone https://gitlab.com/example-name/example-repo.git dirname

Управління конфігурацією в репозиторії

  1. Дотримуйтесь інструкцій на Розділ 11.10, «Синхронізація Версій Конфігурацій» для експорту повного архіву конфігурації вашого сайту.
  2. Якщо ви ще не ініціалізували конфігурацію в репозиторії, розпакуйте архів конфігурації в нову директорію, бажано над кореневим каталогом директорії, і дотримуйтесь інструкцій вище, щоб додати ці файли в свій репозиторій.
  3. Після ініціалізації, при зміні конфігурації вашого сайту, експортуйте і розпакуйте архів конфігурації в тому ж місці. Дотримуйтесь інструкцій вище, щоб оновити ці файли в ваше сховище.
  4. Щоб імпортувати оновлену конфігурацію на інший сайт, зробіть архів конфигураційнної директорії з вашого сховища. Потім дотримуйтесь інструкцій на Розділ 11.10, «Синхронізація Версій Конфігурацій» для завантаження і імпорту цього архіву на сайт.

Пов’язані поняття

Розділ 11.7, «Основи: Сайти для розробки»

Автори

Адаптований і відредагований Jennifer Hodgdon від "Building a Drupal site with Git", авторські права 2000-2025 за окремими учасниками Drupal Community Documentation.

Перекладено Олексій Бондаренко із Mazaltov.

 

This page is generated from AsciiDoc source from the User Guide. To propose a change, edit the source and attach the file to a new issue in the User Guide project. PDF and e-book formats are available on the User Guide project page.

Source file: extend-git.asciidoc

Help improve this page

Page status: No known problems

You can: