企業システムにはVB6とTFS2010がインストールされています。この問題は、TFS2010 に接続する MSSCCI プロバイダーを介して VB6 でプロジェクト ファイルを開くかチェックインしようとすると発生します。プロジェクト 1 とプロジェクト 2 (プロジェクト 1 のコピー) という 2 つの別個のプロジェクトがあります。これら 2 つのプロジェクトは、同じコレクションの下にあります。私のローカルドライブでは、次の構造になっています。
C:\TFS\Project1
C:\TFS\Project2
以前、TFS の Project1 に関連する C:\TFS\Project1 から CIS_DL.vbp を開きました。プロジェクト 1 フォルダーでプロジェクト ファイル CIS_DL.vbp を初めて開いたとき、そのプロジェクト ファイルをソース管理に追加するかどうかを VB6/TFS から尋ねられました。その後、そのプロジェクト ファイルをソース管理に追加すると、プロジェクト 1 は正常に動作します。 . つまり、プロジェクトを開く/チェックイン/チェックアウトするプロジェクトは正常に機能します。
C:\TFS\Project2 にあるプロジェクト ファイル (CIS_DL.vbp) を開くと (このプロジェクト ファイルはプロジェクト 1 にあるプロジェクト ファイルと同じです)、VB6 MSSCCI プロバイダーは、プロジェクト ファイルと他のすべてのコードが関連していると考えます。 TFS2010 の project1 に。
VB6 のTEAM FOUNDATION プロジェクト プロパティ VB6 を開き、[ツール]、[チーム ファンデーション]、[チーム ファンデーション プロパティ] の順に移動すると、以下の情報が表示されます。
サーバー名: $\project 1\CIS_DL.vbp ($\project 2\CIS_DL.vbp と読みます)
ローカル名: C:\TFS\Project 1\CIS_DL.vbp (C:\TFS\Project2\CIS_DL.vbp と読みます)
VS2010 の TEAM FOUNDATION PROJECT のプロパティ *(TFS TEAM EXPLORER) $\project 2\CIS_DL.vbp に移動すると、右クリックして取得したプロパティを選択します
サーバー名: $\project 2\CIS_DL.vbp を参照 (正しい)
ローカル名: C:\TFS\Project 2\CIS_DL.vbp (正しい) また、私が知る限り、問題なくチェックイン/チェックアウトできます。
これら 2 つのプロジェクトを分離して、MSSCCI プロバイダーが 2 つの異なるプロジェクトを互いに同一のコピーであっても区別できるようにする方法はありますか? また、TFS は VB6 プロジェクト ファイルをどのように処理しますか? コードの同一コピー、つまり project1 のコピーが必要な理由には裏話があるため、プロジェクトを 1 つだけにすることは解決策ではありません。
私は次のことを試しました:
TFS2010 の File...Source Control...Workspaces で、自分のワークスペースを変更して遊んで、さまざまなプロジェクトをさまざまな場所にマッピングします。これは役に立ちませんでした。
ローカル ソース フォルダー (c:\TFS\Project 2) で、プロジェクト ファイルの名前を別の名前に変更します。プロジェクト ファイルを開くと、ソース管理に追加するかどうかを尋ねられました。[はい] をクリックすると、ファイルが TFS の project1 の場所に追加されました。
私は提案を受け入れます。また、スクリーンショットを提供していただけると幸いです。誰かが私がアップロードできる場所を示すことができます。
どうもありがとう
ダリボル