1

MicrosoftVisualSourceSafeの代わりに使用できるリビジョン管理ソフトウェアを探しています。私はこのテーマについて何時間も調査しましたが、最終的には適切な解決策が見つかりませんでした。なんで?VSSの共有ファイルはユニークな機能のように見えるからです。

具体的には、共有ファイルとは、複数の場所にマップされた単一のファイルを意味します。たとえば、異なるプロジェクト間で1つのソースコードファイルを使用する場合は、必要なプロジェクトディレクトリにドラッグアンドドロップするだけです。次に、複数のディレクトリにリンクされた1つのファイルがあります。誰かがこれらのプロジェクトのいずれかでそのファイルを変更すると、他のすべてのプロジェクトはそのファイルをヘッドリビジョンに更新します。

SVNの同等の機能はsvn:externalsであり、ヘッドリビジョンを使用する方法と明示的に選択されたリビジョンを使用する方法の2つの方法でファイルを共有できます。ただし、どちらを選択しても、結果はVSSの場合とは異なります。そのため、ヘッドリビジョンのプロジェクトに外部ファイルを添付すると、VSSの場合とほとんど同じになります。しかし、プロジェクトの履歴リビジョンを取得したい場合は、適切な履歴ファイルではなく、常に外部ファイルのヘッドリビジョンを取得します。バグのように見えますが、SVNがこのように機能するのには理由があるかもしれません。2番目のオプションは、選択したリビジョンの外部ファイルを使用することです。ただし、これらのファイルは、誰かがどこかで変更したときに、各プロジェクトで手動で更新する必要があります。本当に、これを手動で行いたくありません。

プラスチックSCMは、私が確認した2番目のソリューションです。私見このシステムは素晴らしいです!直感的で明確なGUIと、分岐とマージを非常に簡単に処理できるすばらしいリビジョングラフ。それはVSSと比較して本当に私の注意を引きました。しかし、トピックに取り掛かりましょう。プラスチックはXlinks(シンボリックリンク)をサポートしていますが、ファイルではなく、Xlinksを使用してリンクできるのはディレクトリのみです。さらに、ヘッドリビジョンを共有するオプションはありません(特定のリビジョンを明示的に選択する必要があります)。

それではどうしたらいいか聞いてみましょう。作業をより効率的にすると同時に、共有機能を失わないようにするために選択するソフトウェアは何ですか?なぜそんなに人気がないのですか?プロジェクト間でコードを共有するための別のアプローチはありますか?

4

1 に答える 1

1

共有場所へのIMHOのファイルごとのリンクは混乱を招きます。これは、ほとんどのSCMがディレクトリレベルでの共有を許可するパラダイムを採用した理由を説明していると思います(あるとしても)。gitあなたがPlasticSCMにもたらした例に加えて、私はこの機能をサブモジュールとして提供する経験があります。ここでも、共有ファイルを別のディレクトリに配置する必要があり、共有部分(サブモジュール)間の混乱の少ない階層関係を強制します。そしてそれを使用するプロジェクト。

残念ながら、あなたは多くの必要性や使用法がない機能に恋をしたようです。あなたのニーズはとてもユニークかもしれません。ただし、要件が本当に一意であるかどうかを慎重に検討する必要があります。おそらく、より主流の開発規則(この場合は、共有ファイルを別のディレクトリに配置する)にそれをあきらめるという小さな犠牲を払う必要があります。これにより、状態を使用できるようになります。最先端のツール。

于 2012-12-16T14:22:52.920 に答える