2011-06-20 7 views
0

複数のコンピュータ間で複数のユーザー間で参照を処理する方法が不思議でした。私たちにはデベロッパーが少ない小さなデベロッツショップがあります。参照がわずかに異なるパス(c:\ Dave \ CommonBin対c)に存在するため、ユーザーが最新(ソース管理用にTFSを使用)を取得するたびにreference locations/paths/web.configファイルが乱れる問題があります。 :\ Joe \ CommonBin。他の人はこの問題をどのように処理しますか?参照の処理Visual Studioでのユーザー間での位置

答えて

0

ここで実際に開発を行っていますか?ローカルボックスまたは共有ボックスにありますか?ローカルボックスの場合は、c:\ Daveとc:\ Joeが表示される理由はありません。共有ボックスを使用している場合は、方法が正しいかどうかを、共有環境==混乱として調べる必要があります。

私の方法論は、相対的に言えば、パスを同じに保つことです。これは、ルートが同じではない(たとえ絶対パスが異なるかもしれないが、.slnファイルからの相対パスが同じであっても)すべての人が同じ構造を使用することを意味します。これにより、人々はVS 2010のプロジェクトディレクトリまたは別のフォルダ(私はc:\ projectsを使用しています)の下で作業することができます。

この方法論を適用して、組み込みのWebサーバーを使用することはできますが、組み込みサーバーを使用するときに発生するいくつかの問題を取り除くために、IISを使用する方が良い方法です。これは、すべての開発者がIISディレクトリを設定する必要があることを意味します(IIS 7のWindows 7があなたの開発者を助けるので、あまり真実ではありません)。しかし、これは大きな踏み台ではなく、多大な頭痛を取り除きます。

一貫性がある場合は、システム間での適合性が向上し、現在発生している多くの問題を回避できます。ここからそこに着くには、一時的に弾を噛んで物事を修正する必要があります。

+0

私たちはまともな統一性を持っていますが、時にはそこにJoe/Daveのディレクトリがあるため、devボックスを共有する必要があります。 – bechbd

0

すべての開発者の間で一貫したパス構造を使用すると役立ちます。サードパーティの図書館が行く限り、プロジェクト自体でそれらをチェックすることは良い考えです。そうすれば、最新のコードを入手してビルドすることができます。私の経験では、TFSはバイナリチェックインではうまくいかず、Visual Studioとの統合のために、ソリューションアイテムを追加してそこにライブラリを追加しない限り、新しいバージョンに更新するのは苦労かもしれません。依存関係を管理するためにソリューションエクスプローラを少しでも残しておけば、ソース管理ツールを使用してソリューション外で管理できます。

web.configファイルでは、web.config.templateファイルをチェックインする傾向があり、すべての変更がそこに行きます。開発者はweb.configをローカル環境で必要なものすべてを編集し、他の誰かを欺くことはできません。しかし、テンプレートファイルに変更を加えることを忘れないでください。完璧なシナリオではありません。

0

通常、プロジェクト参照は相対パスを使用して含まれています。したがって、ファイルへの相対パスが同じである限り、開発者が異なるプロジェクトツリーを持っているかどうかは関係ありません。

CommonBinディレクトリをプロジェクトツリーに移動するだけで、うまくいくように思えます。

+0

相対パスを使用してそれらをどのように組み込みますか?あなたは "参照を追加する"ときにファイルの絶対パスを入れますか? – bechbd

+0

Visual Studioでは、相対パスが自動的に使用されます。 .csprojファイルをエディタで見ると、これが見えます。 – skeeve

関連する問題