====== office git server ====== Далее по тексту для краткости: "Сервер" означает наш офисный выделенный гит-сервер, "BB" - BitBucket На сервер склонированы все репозитории, находящиеся на BB. Каждый день в 12:00 выполняется обновление с BB на Сервер, т.е. все коммиты, сделанные на BB прилетят на Сервер. ===== Ситуация 1 - BB основной, Сервер резервный ===== Требуется: работать с BB как с основным, а Сервер просто хранитель репозиториев на случай блокировки BB, и умирания одним разом всех компов с рабочими копиями. Что делать: ничего. ===== Ситуация 2 - Сервер основной, BB резервный ===== Требуется: работать с Сервером как с основным, а BB на всякий случай, либо для тех, кто еще не примкнул Серверу. Что делать: === Клонируем проект === git clone ssh://git@109.195.39.165:40000/repo/git-awclient.git Если без BB, то всё. Иначе идем дальше. === Добавляем remote для BB === Открыть в редакторе: ''git-awclient/.git/config'' Добавить текст: [remote "bb"] url = git@bitbucket.org:promauto/git-awclient.git fetch = +refs/heads/*:refs/remotes/origin/* === Как делать push === Отправить на Сервер: git push Отправить на BB: git push bb ===== Настройки сервера ===== Команда клонирования с BB: git clone --mirror git@bitbucket.org:promauto/git-awclient.git Команда обновления с BB: for dir in *.git; do (cd "$dir" && echo "$dir" && git remote update); done