11


4

Webアプリケーション/ Webサイトのバージョン管理のための戦略は何ですか?

ここのベータ版ではフッターにsvnリビジョン番号があることに気付きました。これは一つのリポジトリでsvnを使うアプリケーションには理想的です。 しかし、外部ファイルやバージョンが異なるファイルを管理する別のソース管理アプリケーションを使用した場合はどうなりますか?

デスクトップアプリケーションにとっては簡単なようですが、asp.net Webアプリケーションの適切なバージョン管理方法を見つけることができないようです。

*注意*私が私の質問に完全にはっきりしているかどうかはわかりません。

  1. 私が知りたいのは、asp.netアプリケーションのバージョン番号を作成して自動インクリメントする方法です。

  2. 私はそれをsvnとリンクする方法には興味がありません。

5 Answer


4


http://weblogs.asp.net/bradleyb/archive/2005/12/02/432150.aspx[カスタムMSBuildタスクを使用してアセンブリバージョンを自動インクリメントする方法]。 少し古いですが、うまくいくと思います。


2


私の大きなアプリのために私はただ増加するバージョン番号id(1.0、1.1、 …​) that i store in a comment of the main file (usually index.php).
ただのウェブサイトのために私は通常ただリビジョン番号(1,2,3、…​)を持っています。


2


最初は基本整数(1,2,3)に固執する傾向があり、物事が大きくなると有理数(2.1、3.13)に移行します…​

ある時点で果物を使ってみましたが、それは小さなオフィスではうまくいきました。 ああ、 'バナナ’リリース? 角を見渡す "うん…​ それは今かなり古くなっています…​」

残念ながら、開発チームが成長したときに混乱が生じ始めました。それはOrange、またはMandarin、またはTangeloですか? それは大丈夫です。 「内側が腐っている」とはどういう意味ですか?

  1. but in all honesty. Setup a separate repository as a master, 開発はさまざまなリポジトリで行われています。 スケジュールされたリリースごとにすべてがマスターリポジトリにチェックインされるので、問題が発生したときにすばやくロールバックできます。 (私はdev / test / productionがすべて別々のサーバーであると仮定しています、そしてdevはproductionやマスターリポジトリに触れることを許されません……)


0


私は別々のSVNリポジトリにあるさまざまなコンポーネントでWebアプリケーションのシステムを管理しています。 システム全体をバージョン追跡できるようにするために、外部参照として他のすべてのリポジトリを含む別のSVNリポジトリがあります。 それは全体を展開するためのインストール/セットアップスクリプトも含みます。 この設定では、 "メタリポジトリ"のSVNリビジョン番号がシステム全体のバージョン管理に使用される可能性があります。

別のケースでは、私は SVNキーワードによってSVNリビジョンをクラスに含めます他の目的には役立たないファイル(キーワード置換がコードを壊す危険を避けるため)。 そのファイル内のクラスには、SVNによって操作されクラスメソッドによって解析される文字列変数が含まれています。

両方のアプローチの不都合は、改訂番号が外部の変更(アプローチ1)やコードの残りの部分(アプローチ2)によって自動的に更新されないことです。


0


社内開発中は、マイルストーン番号(M1、M2、M3 …​)を使用しています。 リリース後は、おそらく日付を更新するだけです(「2009年1月の更新」)。