← До фільтрів та технологій

← До списку лабораторних по Git

Git Лабораторна 75: Зеркальний push у декілька сховищ

Технологія: Git

Номер лабораторної: 75 · Рівень: middle

Тема: Кілька remote для дзеркалювання репозиторію

Повний опис / сценарій лабораторної:

Meta: навчитися налаштовувати репозиторій який пушиться у два різні сервери для резервування.



Krok 1. Створити локальний репозиторій і перший remote origin.

Komandy: cd ~; mkdir mirror75; cd mirror75; git init; echo "mirror demo" > file75.txt; git add file75.txt; git commit -m "Initial mirror demo"; git remote add origin URL_PRIMARY



Krok 2. Додати другий remote backup.

Komanda: git remote add backup URL_BACKUP



Krok 3. Перевірити список remote.

Komanda: git remote -v

Poyasnennya: мають бути origin і backup.



Krok 4. Налаштувати push щоб за замовчуванням відправляти у обидва remote.

Komanda: git config remote.pushDefault origin

Poyasnennya: додатково можна створити alias для push у два remote.



Krok 5. Створити alias для подвійного push.

Komanda: git config alias.pushall "!git push origin --all && git push backup --all"



Krok 6. Зробити новий коміт.

Komandi: echo "new line" >> file75.txt; git add file75.txt; git commit -m "Update for mirror test"



Krok 7. Виконати git pushall.

Komanda: git pushall

Poyasnennya: зміни йдуть на два сервери.



Krok 8. Перевірити історію на обох серверах через веб інтерфейс або git fetch з іншої машини.



Krok 9. Задокументувати політику що робити якщо один із серверів тимчасово недоступний під час push.



Krok 10. Mini zvit.

Zavdannya: опиши де у твоїй інфраструктурі може знадобитися така схема дзеркального репозиторію.