SVN とデプロイメントのワークフロー
-
21-09-2019 - |
質問
シンプルにしようと努めていますが、バージョン管理の経験がほとんどない私が、すでに公開されている Facebook アプリケーションのバージョンとデプロイメントのワークフローについて思いついたものを以下に示します。
発達:
幹からの枝
開発環境をチェックアウトしてセットアップします (データベース、NetBeans プロジェクト、Facebook アプリ、構成ファイルを自動的に作成します)。
ステージング (開発ブランチと同じ):
テストを (手動で) 実行します。
OKの場合 - svn commitして開発/ステージングブランチをトランクとマージします
プロジェクトをライブサーバーにデプロイし、必要に応じて運用データベースを更新するためのコミット後のフック。
異なる開発ブランチを同期します - 1 つの開発ブランチが本番環境に移行した場合、それをまだ開発中の他のブランチとマージします。
このワークフローに重大な間違いはありますか?またはそれを改善する方法についての提案。
追伸:今のところ開発者は私だけです。
解決
少し複雑に聞こえます。
ステージングにブランチが必要なのはなぜですか?開発者ブランチ タイプのワークフローを使用している場合は、トランクにマージし直すとすぐに、これをデプロイすることができます。
特に今のところ開発者はあなただけなので、これは Subversion にとって過剰な分岐とマージのように思えます。私は自分自身の生活をよりシンプルにして、次のうちの 1 つを守るように努めます。 よくある分岐パターン.
他のヒント
1、開発者にとっては、準備ができたらちょうどトランクにあなたのステージングブランチとマージに開発し、不要です。
フィーチャーブランチ(あなたの提案ワークフロー) - プロジェクト/リリースが並行して開発する必要がある大規模なコードベースでも作業
。リリースブランチ - 仕事だけでなく、プロジェクト/リリースは反復型開発サイクルをたどる小さなコードベースのため。