Рабочий процесс Git с Capistrano

Я пытаюсь осмыслить хороший рабочий процесс 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, чтобы признать, что у меня есть нашел его.

    Помогите!

    5
    задан jerhinesmith 10 January 2011 в 17:59
    поделиться