効果的なリビジョン管理を選択してください
-
10-10-2019 - |
質問
私たちは小規模から大規模なプロジェクトに取り組んでいる会社です。場合によっては、1 つのプロジェクトに 5 人、10 人、20 人など、さらに多くの開発者が参加することがあります。
私たちは、最適なオプション プロパティを備えた効果的なリビジョン管理システムを探しています。
パフォーマンスの問題 – 1つのファイルサイズ、複雑なディレクトリ構造
スケーラビリティ – 5、10、25人の開発者、10、50、200のプロジェクトをサポート
支店の統合
コード変更の改訂とマーキング
統計とレポート 開発者、リーダー、ベンダー、リーダー育成、顧客など向け。
さまざまな技術開発をサポート- .NET、JAVA、PHP、Oracle、Delhpi、ABAP / SAP。
現時点ではどちらかを決定中です SVN, VSS, Rational rose, ClearCase and JIRA
. 。このソリューションの一部はバグ トレースとナレッジ ベース リポジトリをサポートしていますか?
もしかしたら誰かがこのテーマに関して経験があり、提案をしてくれるかもしれません。
前もって感謝します。
よろしくお願いします。
解決
私はこれまでに協力したさまざまな会社で SVN、VSS、クリアケースに取り組んできました。私はこれらの中で SVN が最も優れていると常々感じています。ただし、最近では、より優れた分散バージョン管理ツール (mercurial、git、bazaar など) がいくつか利用可能になっており、それらも検討してみるとよいでしょう。
主に SVN/クリアケースに関する私の見解は次のとおりです。
パフォーマンスの問題 SVN:Subversion は 2GB の単一ファイル サイズまで処理できることがわかりました。複雑なディレクトリ構造は、clearcaseです。クリアケースで巨大なファイルやリポジトリを処理する際に、パフォーマンスやネットワークの問題が発生するのを確認しました。私の場合、Windows システムの NFS マウントが原因で、ビルドの実行が非常に遅くなっていました。
スケーラビリティSVN と Clearase には両方とも優れたスケーラビリティ オプションがあります。ただし、svn にはインターネット上で非常に優れたコミュニティとサポートがあり、クリアケースには欠けています。ただし、クリアケースの場合は、スケーラビリティの問題に対して有料サポートと迅速な解決策が提供されます。
支店の統合この場合、Clearcase が明らかに勝者です。Clearcase はしばらくの間、非常に優れたマージ機能を備えています。SVN はこの面でまだ改良中ですが、最近では SVN マージ機能が大きく貢献しています。
コード変更の改訂とマーキングIMO、clease と svn はほぼ同じです。しかし、慣例は少し異なります。
統計とレポート Clearcase は、svn よりも優れたレポート機能を備えています。ただし、この場合、クリアケースは過剰な効果があると感じています。SVN には、きちんとしたレポートを提供できるシンプルなレポート ツール (glassfish など) が多数あります。
さまざまな技術開発をサポート私は上記のテクノロジーのほとんどに取り組んできましたが、どちらのツールも考えられるすべての環境 (Visual Studio、Eclipse など) を適切にサポートしていると思います。
ところで、合理的なローズは UML ツールであり、バージョン管理とは関係ありません。JIRA はバグ追跡ツールであり、SVN とうまく統合されています。svn との統合については trac を検討することをお勧めします。
上記がお役に立てば幸いです
他のヒント
SVNで非常に良い経験があります。コードベースを適切に制御でき、ファイルで何が起こったのかを簡単に確認できます。
また、サードパーティプラグインを介した優れたビジュアルスタジオインターションもあります。 VisualSVNを使用していますが、無料ではありませんが、非常に優れています。
VSSは良くありません。物事を台無しにするのはとても簡単です。
ClearCaseは非常に優れていますが、ライセンスは非常に高価です。それは一般にコードベースを非常に厳格に制御していますが、何か問題が発生した場合、それを修正することは非常に困難です。
それが何であれ、VSSを使用しないでください。一度もない。
私の知る限りでは、 ジラ ISはバージョン制御システムではなく、バグ /問題追跡システム(および非常に良いシステム)です。
他の回答で述べたように、SVNは非常に優れたソリューションであり、多くのプロジェクトで成功したプロジェクトで使用されています。新しい分布ソリューションには、Git、Mercurial(HG)、BZRなどが含まれます。ただし、分散型チームでは分散バージョン制御システムは使用しません。 DVCを搭載するには、実際の初期コストがあります。
そして、私はすでに言いました:サーキングスタンスの下で、VSSを使用しないでください。
上記のリストには、主に古い学校の改訂制御が含まれています。ファイルをexlusivlyにロックするため、VSSはすべてのコストで避けます - 1人のユーザーのみがファイルを変更したり、1人のファイルをチェックアウトできます。
まだ単一のローカライズされたリポジトリが必要な場合は、SVNをお勧めします。使いやすく、サードパーティのツールを介した優れたビジュアルスタジオインターレーションがあります。
Microsoft Technology(バグ追跡、ソースコントロール、継続的統合など)に完全に統合されたソリューションが必要な場合は、TFSを使用することをお勧めします。
多くの分岐/マージを計画している場合は、Source Controlを配布するためにMercurial/Gitをチェックしてください。
- ClearCaseはそれを使用する方法を知っている場合にのみ良い、そしてそれは非常に高価です
- TFSはうまく機能しません。地獄のように遅いです。
- SVNは良い分岐をしません。サイドノートとして、すべての主要なOSSプロジェクトはすでにGitまたはMercurialに向かってそれを放棄しました
- VSSは地獄のように避けてください
- 私は間違いなく行くでしょう JIRA +プラスチックSCM
- HGとGitは優れたオプションですが、ほとんどの場合、コマンド愛好家である必要があります