この投稿 (ブランチを使用する中規模のプロジェクトでデータベースのリビジョンを管理するにはどうすればよいですか? ) を読んで、ブランチを使用して Web プロジェクトで作業し、開発、ステージング、および運用 (ローカル コピーと共に) にデプロイする最善の方法を考えさせられました。
「リリース」自体はありません。機能が目立つほど大きい場合は、(必要なテストなどの後)ライブにプッシュします。そうでない場合は、いくつかをまとめて、「快適」と感じたらプッシュします。それらは生きています。絶えず変化するサイトはユーザーを少し不安にさせる傾向があるため、目標は月に 1 回か 2 回以上展開しないことです。
これが私たちのやり方で、ちょっともろく感じます (現在は svn を使用していますが、git への切り替えを検討しています):
- 2 つの「ブランチ」 - STAGE の特定のリリースが TRUNK としてマークされている DEV と STAGE
- 開発者は変更ごとに TRUNK のコピーをチェックアウトし、そのブランチを作成します
- 開発者はローカルで作業し、コードを頻繁にチェックインします (投票のように: 早期かつ頻繁に)
- 開発者が完全に壊れていないことに慣れたら、ブランチを DEV にマージし、開発サイトにデプロイします。
- 変更が「終了」するまで、必要に応じて 3 ~ 4 を繰り返します。
- 変更ブランチを STAGING にマージし、ステージ サイトにデプロイします。期待される最終テストを行います。
- 一定期間後、STAGE の特定のリビジョンを TRUNK としてマークし、トランクをライブにプッシュします。
- TRUNK の変更を DEV にマージして同期を維持する
現在、これらのステップのいくつかは非常に複雑であり、実際には実行が非常に困難です (TRUNK -> DEV は常に壊れます)。そのため、もっと良い方法があると想像する必要があります。
考え?