11.11. Управління файлами і конфігураційними редакціями за допомогою Git
Використовуйте інструмент контролю версій Git, щоб управляти редакціями файлів і конфігурацій на вашому сайті.
- Розділ 3.2, «Основи: Додаткові інструменти»
- Розділ 3.3, «Основи: Способи завантаження та устанвоки ядра програмного забезпечення Drupal»
- Розділ 11.7, «Основи: Сайти для розробки»
- Як налаштувати Git репозиторій і знайти його клон URL. Наприклад, якщо ви хочете використовувати GitLab для зберігання вашого сховища, дивіться GitLab "Create a project" page і GitLab "Command Line basic commands" page. І якщо ви хочете використовувати GitHub для зберігання вашого сховища, дивіться GitHub "Create a repo" page і GitHub "Which remote URL should I use" page.
- Як відкрити і використовувати вікно командного рядка і текстовий редактор.
- Для управління конфігурацією, як розпакувати і упакувати архівні файли (наприклад .zip і .tar.gz).
- Ви повинні завантажити програмне забезпечення для вашого сайту, використовуючи один з методів в Розділ 3.3, «Основи: Способи завантаження та устанвоки ядра програмного забезпечення Drupal». Якщо ви хочете керувати конфігурацією, ви повинні мати встановлене програмне забезпечення і працючий сайт.
- Git клієнт повинен бути встановлений на сервері вашого сайту. дивіться Git для інструкції.
- Ви повинні створити новий репозиторій і знати його Git клон URL.
Виконайте ці кроки один раз, після створення Git-сховища, для підключення вашої локальної директорії до сховища і додавання до нього вихідного файлу.
- Відкрийте вікно командного рядка і перейдіть в директорію, де знаходяться файли вашого сайту. Це ваша "верхня"(коренева) директорія.
- Визначте де знаходиться ваш кореневий каталог. Якщо core, modules, і themes директорії розташовані в цьому каталозі, тоді ви в вашому кореневому каталозі. Якщо ви використовували Composer для завантаження, тоді ці файли знаходяться всередині web підкаталогу (який є вашим кореневим каталогом).
- В текстовому редакторі створіть новий файл з ім’ям .gitignore у верхній директорії (або внесіть необхідні зміни, якщо він вже існує). Цей файл містить список файлів і директорій який Git ігноруватиме (не додавати в репозиторій). наприклад, settings.php файл для вашого сайту не буде додано до Git, тому що він містить відомості про обліковий запис бази даних, і медіафайли, завантажені на ваш сайт (зазвичай sites/default/files) також не повиннs бути в Git - мета полягає в тому, щоб в репозиторії було програмне забезпечення, а не вміст сайту.
Переконайтеся, що наступні рядки знаходяться в файлі .gitignore. Якщо ваш кореневий каталог перестав бути верхньою директорією, перевірте кожну з них, щоб дізнатися, чи потрібен їм префікс. наприклад, sites можливо буде потрібно замінити на web/sites.
sites/*/settings*.php sites/*/files config
Введіть наступні команди:
git init git add -A
При бажанні перевірте список файлів, які ви будете додавати в свій репозиторій Git, ввівши цю команду і гортаючи (дуже довгий) список:
git status
Введіть наступні команди. Ви можете замінити ваше повідомлення комміта для "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
- Якщо ви використовуєте хостинг сховища GitLab, GitHub або інший хост з онлайн доступом, ви можете перейти на свою сторінку сховища та побачити, що файли там.
Використовуйте ці кроки, при оновленні, додаванні або видаленні одного або декількох файлів на вашому сайті, щоб відправити зміни (push) в ваше сховище.
- Відкрийте вікно командного рядка, і перейдемо в директорію де знаходяться файли вашого сайту.
Перевірте список файлів, які були додані, змінені або видалені.
git status
Додатково, для текстових файлів, які були змінені (не зображення), подивіться на відмінності між новою і старою версіями файлу:
git diff path/to/file.txt
Підготуйте всі зміни для наступного комміту і переконайтеся, що вони внесені:
git add -A git status
Ви можете усунути певний файл з чергового комміту який ви вже додали до стейджу але ще не закомітили, або можете додати інший файл до вже застейджених. Якщо конкретний файл або директорія продовжує додаватися помилково, розгляньте можливість додавання його в .gitignore файл, щоб він був проігнорований в Git. Команди усунення/додавання до стейджу чергового коміту:
git reset HEAD path/to/file.txt git add path/to/file.txt
Виконати коміт і пуш ваших змін. Напишіть щось значуще в повідомленні комміту:
git commit -m "commit message here" git push
Якщо у вас є інші копії вашого сховища, поновіть їх, відкривши командний рядок в директорії кожної копії і запустивши таку команду:
git pull
Виконайте наступні дії, якщо ви хочете скопіювати всі файли вашого сховища на нове місце розташування. Наприклад, у вас може бути локальна копія розробки вашого сайту і робочий сайт, або кілька членів команди можуть мати локальні копії сайту.
- Відкрийте командний рядок терміналу в тому місці, де ви хочете, щоб знаходилися файли.
Введіть наступну команду, замінивши URL вашого клону репозиторія на URL і ім’я підкаталогу dirname, в якому ви хочете їх використовувати:
git clone https://gitlab.com/example-name/example-repo.git dirname
- Дотримуйтесь інструкцій на Розділ 11.10, «Синхронізація Версій Конфігурацій» для експорту повного архіву конфігурації вашого сайту.
- Якщо ви ще не ініціалізували конфігурацію в репозиторії, розпакуйте архів конфігурації в нову директорію, бажано над кореневим каталогом директорії, і дотримуйтесь інструкцій вище, щоб додати ці файли в свій репозиторій.
- Після ініціалізації, при зміні конфігурації вашого сайту, експортуйте і розпакуйте архів конфігурації в тому ж місці. Дотримуйтесь інструкцій вище, щоб оновити ці файли в ваше сховище.
- Щоб імпортувати оновлену конфігурацію на інший сайт, зробіть архів конфигураційнної директорії з вашого сховища. Потім дотримуйтесь інструкцій на Розділ 11.10, «Синхронізація Версій Конфігурацій» для завантаження і імпорту цього архіву на сайт.
Розділ 11.7, «Основи: Сайти для розробки»
Автори
Адаптований і відредагований Jennifer Hodgdon від "Building a Drupal site with Git", авторські права 2000-2025 за окремими учасниками Drupal Community Documentation.
Перекладено Олексій Бондаренко із Mazaltov.
Source file: extend-git.asciidoc
Help improve this page
You can:
- Log in, click Edit, and edit this page
- Log in, click Discuss, update the Page status value, and suggest an improvement
- Log in and create a Documentation issue with your suggestion