4

私はSCMを新しいプログラム用にセットアップするのを手伝っており、現在、VCSを決定しているところです。

この時点での主な候補は、SVN、ClearCase、SVN + DVCS、および単なるDVCSです。

現在、チームはSVNまたはSVN+DVCSのいずれかに傾いています。ClearCaseの費用と管理コストを回避したいのですが、ClearCaseが提供するワークフローとバージョン管理オプションが必要です。DVCSを使用するオプションも提案し、そのアイデアを検討しています。

DVCSについては、Mercurial、Bazaar、Gitを検討しています。チームはSVNに満足していますが、必要な汎用性が提供されるとは思わないため、SVNオプションに加えてDVCSを検討しています。

そのようなセットアップを実行するためのアドバイス(既存のツール、プロセスなど)はありますか?

懸念事項は次のとおりです。

  • セットアップのしやすさ
  • ワークフローの設定(<->コードレビュー->テスト->トランク、次にトランク->統合テストブランチ->リリースブランチにバグ修正を加えたリリース)、監査(バグが導入されたときに発見された)
  • メトリックの生成
  • ClearCaseに慣れている開発者にとっての合理的な学習曲線。
  • Windows開発
  • 課題追跡システムの統合(石に設定されていませんが、おそらくRedmineになるでしょう)
4

4 に答える 4

9

ClearCase の管理者として、複雑なマージ ワークフローがない限り、そのツールを除外します。

あなたが言及したワークフローには、分岐、修正、およびマージを簡単に実行できることが含まれますが、これは SVN を支持するべきではありません。

ClearCase (特に非 UCM ClearCase) に慣れている場合の最大の落とし穴は、構成仕様の「構成」です。
DVCS (Mercurial、Bazaar、またはWindows で非常にうまく動作するため Git )を選択した場合、同じ「継承効果」を得ることができません(連続する選択ルールが異なる異なるバージョンを選択している場合)。 -:その答えで述べたように:

純粋に中央の VCS では、必要なルールを使用してワークスペース (ClearCase ではスナップショットまたは動的の「ビュー」) を定義できます。
これは DVCS では実用的ではありません (「分散型」の場合のように): DVCS でブランチを作成する場合は、開始点と明確に定義されたコンテンツを使用して、他のリポジトリに簡単に複製する必要があります。

ClearCase UCM を使用している場合、これは一貫したファイル セットを特定することを意味します。これは、たとえばGit サブモジュールを介してのみ実現できます。
これらの DVCS では、ClearCase UCM のようにモジュール (または「ファイルのセット」) 間の依存関係が記録されないため、より複雑になります。

要約すると、次のようになります。

  • セットアップの容易さ: 前述の DVCS はすべてセットアップが簡単です。考慮する必要があるのは、ユーザー アクセスに関する管理です。
  • ワークフローのセットアップ: DVCS はあらゆる種類のワークフローをサポートします。集中化されたワークフロー、パブリック/プライベート ワークフロー、または.
  • メトリクスの生成: 「管理されているコードに関するメトリクス」を意味する場合、それらはすべて、変更内容に関する多くの情報を表示できる完全なログ システムをサポートします。
    しかし、「ツールに関する測定基準」(プロセスの速度またはデータが占めるスペース) に関しては、言及されている DVCS ツールは SVN よりもはるかに高速であると見なされます (例として here を参照)。
  • ClearCase に慣れている開発者にとって合理的な学習曲線: GUI は学習曲線を緩和する要因になる可能性がありますが、この「コア コンセプト」の回答が示すように、DVCS は ClearCase とは大きく異なります。
  • Windows での開発: それらはすべて Windows プラットフォームでうまく動作しますが、Mercurial や Bazaar よりもわずかに優れています (より良い統合)。
  • 課題トラッカーの統合 (確定ではありませんが、おそらく Redmine になる予定です): Redmine は現在、それらのほとんどをサポートしています (当初のように SVN だけでなく)。
于 2009-06-19T17:51:20.880 に答える
3

Git の何が問題なのですか? 現在、Windows で Git を使用しています。それはうまく動作します。 Git 拡張機能は、エクスプローラーの統合が必要な場合、それが問題である場合に非常に便利です。

于 2009-06-19T17:56:29.877 に答える
1

私はクリアケースの経験がありませんが、うまくいけば、次のことが役立つでしょう。あなたの質問には、決定する前に考慮すべきいくつかの情報が含まれていません。まず、ソースコードはどのくらいありますか? SVN は、Linux カーネルのような真に巨大なプロジェクトの中規模から大規模なプロジェクトに適していますが、Git ははるかに優れたパフォーマンスを提供します。次に、どの IDE を使用していますか? Mercurial、Git、および SVN にはすべて Visual Studio と Eclipse プラグインがあり、非常に高品質です。Redmine に関するウィキペディアの記事によると、あなたが見ている SCM システムはどれも統合されます。次のブログは、生計を立てるために SCM システムを書いている人を購入するように書かれているので、あなたにとって役立つかもしれません。 http://www.ericsink.com/

于 2009-06-19T18:16:19.330 に答える
0

Windowsで実行する必要があるという要件を削除できる場合は、 Aegisを確認することをお勧めします。

于 2012-02-25T15:49:23.103 に答える