Я пытаюсь осмыслить хороший рабочий процесс git, используя capistrano. Я нашел несколько хороших статей , но я либо не совсем понимаю, что они предлагают (вероятно), либо их немного не хватает.
Вот вроде как то, что я имел в виду до сих пор, но я застрял, когда нужно слить обратно в основную ветку (т.е. перед переходом на этап? после?) и попытаться подключить его к capistrano для развертывания:
git checkout master
git pull
git checkout -b bug-fix-branch
git status
git add.
git commit -m "Дружественное сообщение о фиксации"
Итак, обычно здесь я застреваю. На данный момент у меня есть исправная ветка master и новая ветвь исправления ошибок , содержащая мои (непроверенные - кроме модульных тестов) изменения.
Если Я хочу отправить свои изменения в стадию (через cap staging deploy
), нужно ли мне объединять свои изменения обратно в главную ветку (я бы предпочел не делать этого, поскольку кажется, что мастер не должен содержать непроверенный код)? Могу ли я выполнить развертывание с главного сервера (или я должен сначала пометить выпуск, а затем изменить мой файл production.rb
для развертывания с этого тега)? git-deployment , похоже, решает некоторые из этих проблем рабочего процесса, но я могу ' Кажется, я не понимаю, как он на самом деле подключается к cap staging deploy и cap production deploy.
Мысли? Я предполагаю, что есть вероятный канонический способ сделать это, но я либо не могу найти его, либо я слишком новичок для git, чтобы признать, что у меня есть нашел его.
Помогите!