0

そのための具体的なアイデアが必要です。

バージョン管理システムの変更を検討しており、Mercurial を使用したいと考えています。それは、いくつかの内部プロセスに関連する多くの苦痛を軽減するだけでなく、いくつかの課題をもたらします.

これらの課題の 1 つは、現在使用しているバージョン管理システムが分散型ではないことです。そのため、社内で使用している各変更セットのリビジョン番号の概念があります。

基本的に、プログラマーがケース管理システムでケースを修正する最終的な変更をチェックインすると、Visual Studio はこれがどの変更セット番号になったかを応答し、プログラマーはそれをケースに添付します。最後のバージョン番号がこの値以上の製品の場合、そのバージョンのすべての変更が含まれています。」

ただし、Mercurial では動作しません。リビジョン番号は、コミットが異なるブランチから来ると変更される可能性があり、変更されるためです。

だから、どうしたら似たようなものを手に入れることができるのだろうと思っています。

これはリリース管理に関するものではないことに注意してください。リリースははるかに制御されていますが、進行中のテストはより流動的であるため、テスターが自分のリストにあるテスト ケースがテストしているバージョンで実際に利用可能かどうかを継続的に判断しようとすることは避けたいと考えています。

基本的に、テストしているバージョンにテストケースに関連する変更があるかどうかをテストする人が確認できる機能が必要です。

私は次のことを検討していました:

  1. プログラマーがコミットし、変更セットのハッシュを取得します
  2. プログラマーはこれをケーストラッカーのケースに貼り付けます
  3. ビルド プロセスは、どの変更セットからビルドされたかを認識できるように、(Mercurial の方法ではなく) バージョンにタグを付ける必要があります。
  4. 私たちの製品が構築された変更セットのハッシュを簡単に取得し、ビルド マシンに使用されるリポジトリの変更セット ログを調べて、製品の変更セットがまたは、テスト リスト内の各ケースの祖先。

だから私は2つの質問があります:

  1. これは実行可能なアプローチですか?これを扱いやすくするWebアプリケーションを作ることに反対ではない
  2. 私に役立つ代替プロセスを知っている人はいますか? タグ付けについて調べてみましたが、タグ付けによってマージ プレッシャーが追加されるようです。それは私が望むものですか? (つまり、タグの追加/移動はコミットとして終了し、システムの残りの部分とマージする必要があります)
  3. 箱から出してすぐに役立つもの、つまり、誰かがすでにこのようなものを作っている、または知っているものはありますか?
  4. 他のアイデアはありますか?
4

2 に答える 2

1

bitbucket と google code の両方が分岐タイムラインを保持し、何が、誰によって、いつマージされたかを視覚的に示します。これはあなたがやりたいことかもしれないと思います: これは問題 4 を解決するための非常に簡単な方法です.

彼らがそれをどのように行うのかはわかりませんが、ツールはそこにあります。BitBucket は商用コード ホスティングを提供します。

于 2010-11-05T15:29:00.820 に答える
1

ビルド プロセスにリンクされた軽量のタグ付けプロセスを探していると言うのは正しいですか?

プログラマーが最後のハッシュを取得して別の場所に貼り付けるという考えには、私は熱心ではありません。プログラマーがコミット メッセージにケース番号を追加するプロセスを構築して、後でコミットを元のケースにリンクできるようにすることはできますか? ケースが「クローズ」としてマークされた場合、ケースに対するすべてのコミットを取得できます。

多くのケース制御システムにはこれがあります-たとえば、 Fogbugz

于 2010-11-05T14:46:27.127 に答える