3611a154f7cc0f5a91d81e5cf156c5a7.ppt
- Количество слайдов: 13
Обновление Moodle при помощи Git Вадим Николаевич Дворовенко Кемеровский государственный университет культуры и искусств
Git и файлы Внешний репозиторий Локальный репозиторий Версия 1 Версия 2 Файлы на диске Версия 3 Файлы на диске
Основные операции Внешний репозиторий push fetch Локальный репозиторий commit checkout Файлы на диске
Сценарий 1. Загрузка последнего релиза нужной версии Moodle 1. Создадим пустой локальный репозиторий Внешний репозиторий git init 2. Добавим информацию о внешнем репозитории git remote add <название репозитория> <адрес> git remote add origin git: //github. com/moodle. git Локальный репозиторий 3. Загрузим информацию из внешнего репозитория в локальный git fetch <репозиторий> git fetch origin 4. Сохраним файлы на диске Файлы на диске git checkout <репозиторий>/<ветка> git checkout origin/MOODLE_24_STABLE
Сценарий 2. Обновление версии Moodle до последней 1. Загрузим обновленную информацию из внешнего репозитория в локальный Внешний репозиторий git fetch <репозиторий> git fetch origin 2. Сохраним файлы на диске git checkout <репозиторий>/<ветка> git checkout origin/MOODLE_25_STABLE Локальный репозиторий Файлы на диске
Сценарий 3. Обновление Moodle с установленными дополнительными модулями 1. Добавим на диск файлы с плагинами Внешний репозиторий 2. Сохраним файлы новой версии на диске git checkout <репозиторий>/<ветка> git checkout origin/MOODLE_25_STABLE 3. Файлы плагинов не изменятся Локальный репозиторий Версия 1 2 Файлы на диске Плагины
Сценарий 4. Обновление Moodle с изменениями в исходном коде 1. Внесем изменения в файлы на диске Внешний репозиторий 2. Попробуем сохранить файлы новой версии git checkout <репозиторий>/<ветка> git checkout origin/MOODLE_25_STABLE 3. Возникнет сообщение об ошибке Локальный репозиторий Версия 1 2 Файлы на диске Изменения 4. Проведем объединение внешних и локальных изменений git checkout --merge <репозиторий>/<ветка> git checkout --merge origin/MOODLE_25_STABLE
Сценарий 5. Обновление Moodle с сильными изменениями в исходном коде 1. Внесем изменения в файлы на диске Внешний репозиторий 2. Проведем объединение внешних и локальных изменений git checkout --merge <репозиторий>/<ветка> git checkout --merge origin/MOODLE_25_STABLE Локальный репозиторий Версия 1 2 Файлы на диске Изменения 3. Git выдаст список файлов для которых возникли ошибки объединения версий с пометкой M. Сайт с ошибками объединения версий неработоспособен!! 4. Получение списка проблемных файлов git ls-files -u
Сценарий 5. Восстановление повреждений 1. Внесем непоправимые изменения в файлы на диске Внешний репозиторий 2. Восстановим нужную версию git checkout --force <репозиторий>/<ветка> git checkout --force origin/MOODLE_25_STABLE Локальный репозиторий Файлы на диске 3. Измененные и удаленные файлы вернутся к исходному состоянию. А вот новые файлы останутся
Сценарий 6. Перенос изменений с компьютера разработчика на сервер Официальный репозиторий Внешний репозиторий разработчика Локальный репозиторий сервера Файлы на диске разработчика Файлы на диске сервера
Публичные сервисы git • github. com (бесплатно только открытый репозиторий) • bitbucket. org (бесплатно закрытый репозиторий с 5 пользователями)
На компьютере разработчика • Создаем пустой репозиторий • Подключаем официальный репозиторий (git: //github. com/moodle. git) • Загружаем данные из официального репозитория • Создаем локальную ветку (mybranch) • Вносим изменения в файлы • Фиксируем изменения в локальной ветке • Подключаем репозиторий разработчика (https: //<логин>: <пароль>@github. com/<логин>/<репозиторий>. git) • Отправляем локальную ветку в репозиторий разработчика
На сервере • Создаем пустой репозиторий git init • Подключаем репозиторий разработчика git remote add myrepo https: //github. com/<логин>/<репозиторий>. git • Загружаем данные из репозитория разработчика git fetch • Загружаем данные из репозитория разработчика git checkout myrepo/mybranch
3611a154f7cc0f5a91d81e5cf156c5a7.ppt