9

本番サーバーとステージングサーバーで実行される大規模なRailsプロジェクトがあります。ステージングまたは本番環境にデプロイするたびにタグを作成することをお勧めします(これはcapistranoで自動的に行われます)。または、「devlopment」および「staging」という名前のブランチを作成する方が良いですか(マスターには本番ステータスが含まれます)。

4

3 に答える 3

7

gitのタグは非常に長寿命です。リモートリポジトリからフェッチすると自動的に伝播します。クリーンアップする場合は、すべてのコピーで手動で行う必要があります。したがって、自動展開をマークするためにブランチ(および場合によってはそれらのreflog)を使用したいと思います。そうしないと、すぐに多くのタグに埋もれてしまう可能性があるためです。

于 2012-08-04T10:47:31.523 に答える
2

必要に応じて迅速に回復するために、各展開に(展開スクリプトで自動的に)タグを付けますが、展開履歴としても役立ちます。例えば:

deployment_stag_20120804
deployment_stag_20120823
deployment_prod_20120715
deployment_prod_20120724

大量のタグを回避したい場合は、スクリプトに最後のN個のデプロイメントのタグのみを保持させることができます。

デプロイの方法が、たとえば本番ブランチにマージする場合、ブランチはより理にかなっています。本番ブランチでは、gitフックがprodサーバーのプルをトリガーする可能性があります。

于 2012-08-04T20:42:32.850 に答える
1

ブランチを開発、ステージング、本番に使用すると同時に、タグを使用して本番バージョンを識別することができます。git flowこれらのブランチを処理し、より多くのブランチを使用して新しい機能を開発できるようにする方法が気に入っています。開発者として、マスターブランチにコードをコミットする必要はなく、マスターにマージすることもまれです。

于 2012-08-04T21:03:06.407 に答える