5

現在、私のチームは Visual Sourcesafe を使用しており、GUI がどれほどひどいものであるかを直接知っており、信頼性が低いというインターネットのうわさを聞いていたので、SVN への移行を進めようとしていました。

今日、マネージャーと最終的な動きについて話していて、彼はそれを支持しており、SVN でソースセーフ スタイルのリンクを作成することは可能かどうか尋ねられました。リンクは、sourcesafe に慣れていない人のために説明すると、概念的には Linux でのファイル リンクと同じように機能します。それらを使用して、プロジェクト間で共有コード/ライブラリをリンクします。SVN を使用してリンクを作成する方法はないと説明したところ、彼は、それが移行の大きな障害になる可能性があると指摘しました。

私は彼に、自分のローカル SVN (開発を容易にするために維持し、ソースセーフで定期的にのみチェックしています) で、共有コード/ライブラリを 1 つの場所に配置し、その場所を ANT に紹介することを伝えました。ただし、ANT タスクが複雑になるため、彼はこのソリューションにあまり感銘を受けていないように感じました。個人的には、ソース管理に多数のリンク ファイルを配置するよりも、もう少し複雑な ANT スクリプトを使用する価値があると思いますが、実際には、どのパラダイムに同意するかが問題になります。

開発者全体がこの制限をどのように回避しているか、また、Git や Mercurial などの新しいソース管理システムはリンクをサポートしているのかに興味がありますか?

4

3 に答える 3

8

プロパティをsvn:externals調べます。

于 2009-02-02T17:28:05.503 に答える
3

バージョン管理には TFS を使用していますが、TFS には VSS リンク機能もありません。リンクされたファイルをすべて削除しました。以前にリンクされたすべてのクラス ファイルは、ソリューション内の共有プロジェクト参照として他のプロジェクトに共有されるクラス ライブラリに配置されています。したがって、本質的には、クラス ファイルではなく、ライブラリを共有します。

これに慣れるまでには少し調整プロセスがありましたが、それ以来、リンクを見逃すことはありません。コードをこのように設定することで、より優れたデザイン プラクティスが促進されます。クラスを 1 つのプロジェクトでのみ使用すると、変更の影響をテストするのがはるかに簡単になるため、破壊的な変更を回避するのに役立ちます (リンクを使用すると、変更によってコンパイルの問題が発生したかどうかさえわからない場合があります)。また、より優れたソース管理システムの機能の一部 (堅牢な分岐やマージのサポートなど) は、リンクされたファイルについて心配する必要がない場合に、はるかにうまく機能します。

于 2009-02-02T18:09:38.273 に答える
-1

Links are useful when source files should be shared between different platforms (.NET, Silverlight, .NetCF) because source files may be equal and therefor can be shared, but compiled libraries can't be shared between this platforms.

于 2009-03-17T07:55:56.177 に答える