Я использую мерзавца для отслеживания проекта, и если бы это возможно, я хотел бы настроить вещи, таким образом, мерзавец обрабатывает всю мою подготовку кода, я могу иметь локальный репозиторий для тестирования и затем продвинуть изменения в сервере с мерзавцем заставлять их жить. Однако в попытке использовать стандарт git push
вызовы, я только заканчиваю с непоследовательным ветвлением и ужасной путаницей конфликтующих историй. Существует ли способ справиться с подготовкой с помощью мерзавца?
У вас есть в этом Postlog Пример GIT REPO, используемого для постановки:
IDE => local Git repository => remote bare Git repository
=> Git repository with the live web application
, он включает в себя крюку после обновления на голой стороне репо, чтобы Запустите обновление репо на стороне Live Web Server.
Последний шаг состоит в том, чтобы определить сценарий крючка «Post-Update» на голый репозиторий, который называется, когда голый репозиторий получает данные.
Чтобы включить крюку «Post-Update», мы должны либо сделатькрюки / после обновления
исполняемый или переименоватькрючки / Post-Update.sample
-крюки / пост Обновление
, в зависимости от версии Git.
В этом скрипте мы просто меняемся в папку живого приложения и начните операцию тяги:
#!/bin/sh
cd $HOME/example.org
unset GIT_DIR
git pull bare master
exec git-update-server-info
Причина, причина, причина, причина, предстоит предложенную удаленную репо, потому что он «разоушится», чтобы сделать толкание в репо, рабочий каталог Отказ
Несмотря на то, что git является распределенной системой управления версиями, обычно рекомендуется иметь центральный репозиторий (возможно, --баре
). Это упростит все.