共用方式為


版本比對

更新:2007 年 11 月

當您執行 VSS 轉換器搭配 Migrate 命令時,檔案就會從 Visual SourceSafe 移轉至 Team Foundation。有時候,未預期的狀況可能會在移轉過程中導致錯誤發生。而且,這可能會導致版本不符,其中 Team Foundation 的固定和最新檔案版本與 Visual SourceSafe 的相同固定和最新檔案版本不符。為了偵測並更正這些可能的版本不符,VSS 轉換器會在 Migrate 命令的最終階段執行版本比對。如果偵測到版本不符,就會自動修正這些不符項目。如果無法修正版本不符,就會列於報表中。

固定版本比對

移轉檔案之後,VSS 轉換器會驗證固定檔案版本是否已正確移轉。PINNED_LATEST 標籤會套用至已移轉的所有固定檔案和非固定檔案。這可確保當您取得 PINNED_LATEST 標籤的檔案時,這些檔案會與 Visual SourceSafe 中的 Get Latest 相符。而 PINNED 標籤則只會套用至固定檔案的固定版本。

VSS 轉換器會執行與 Visual SourceSafe 中 Get Latest 對等的作業,並比較這些檔案與在 Team Foundation 中取得 PINNED_LATEST 標籤的對等項目。如果偵測到錯誤,您可以採行下表所列三種可行的更正方式:

Visual SourceSafe 中的檔案

Team Foundation 中的檔案

對應的動作

存在。

找不到。

從 Visual SourceSafe 取得固定版本、將它加入至 Team Foundation,然後同時將 PINNED 和 PINNED_LATEST 標籤套用至此版本。

找不到。

存在。

移除檔案的 PINNED 和 PINNED_LATEST 標籤。

存在。

存在,但是不同。

從 Visual SourceSafe 取得固定版本、從 Team Foundation 簽出此版本、將它取代成正確的版本,然後重新簽入。最後,同時將 PINNED 和 PINNED_LATEST 標籤套用至新的版本。以這種方式修正的所有版本不符都會簽入成含有註解「由轉換器送出以修正固定版本」的單一變更集。

在固定版本比較的版本比對階段中,您可能會看見與下列類似的內容輸出至主控台視窗:

正在驗證固定版本...

正在驗證固定版本: $/VSSFolder/a.c

正在驗證固定版本: $/VSSFolder/b.c

最新版本比對

移轉檔案之後,VSS 轉換器也會驗證檔案的最新提示版本是否已正確移轉。VSS 轉換器會針對每個轉換的檔案,比較 Visual SourceSafe 中的提示版本與 Team Foundation 中的提示版本。如果偵測到錯誤,有三個可行的更正方式可供您採取,如下表所列:

Visual SourceSafe 中的檔案

Team Foundation 中的檔案

對應的動作

存在

找不到

從 Visual SourceSafe 取得提示版本,然後將它加入至 Team Foundation。

找不到

存在

在 Team Foundation 上刪除此檔案。

存在

存在,但是不同

從 Visual SourceSafe 取得提示版本、從 Team Foundation 簽出此版本,最後將它取代成正確的版本,然後重新簽入。以這種方式修正的所有版本不符都會簽入成含有註解「由轉換器送出以修正最新提示版本」的單一變更集。

在提示版本比較的版本比對階段中,您可能會看見主控台視窗的輸出與下列內容很類似:

正在驗證最新提示版本...

正在驗證最新提示版本: $/VSSFolder/a.c

正在驗證最新提示版本: $/VSSFolder/b.c

版本不符錯誤

VSS 轉換器可能無法更正某些版本不符錯誤。發生這種情況時,錯誤資訊就會記錄於移轉報告中。這些錯誤會顯示為固定版本或提示版本錯誤,而且會列出無法修正的檔案。您應該在移轉後手動修正這些錯誤。

請參閱

其他資源

移轉原始檔控制之後