標籤:style blog http 使用 strong 檔案
- TFS是用來隱藏檔的伺服器,放置不同版本的檔案。因此檔案的數量和內容因版本不同而不同。
在Fig-00中,伺服器和本地的對應檔案夾Common下的因版本不一致,所以檔案數量是不一致的。
Fig-00
在Fig-01中,在本地的解決方案中,我們使用"顯示所有檔案"。相比TFS上的檔案,發現缺少的3個檔案是存在的,只是沒有包含在當前項目當中。這也正 驗證了TFS只隱藏檔本身,並不能體現專案檔的有效性。
Fig-01
- 如何正確的編輯檔案?
我們來看一種不正確的做法的情境。
問題情境:我們通過KT著手維護一個新的項目名字為Homeland,需要把項目的原始碼從版本1.0升級到2.0。拿到最新的原始碼後,組態管理人員小A直接通過複製、粘貼的方式,把Source Code V2.0放到本機對應的路徑下面。結果拷貝完畢後,我們發現檔案的標識還是藍色的鎖。此時小A需要把更新的Source Code V2.0上傳到伺服器上,他選中本地Solution檔案,右鍵點擊後選中"擷取最新檔案",如Fig-02所示,同時選中第二項"當本地檔案跟TFS上的版本一致時,覆蓋所有檔案"。
很顯然伺服器上是V1.0,本地是已經更新過的V2.0。如Fig-03所示系統檢測到Log.cs檔案在本地已經被更新過了。
Fig-02
Fig-03
我們需要處理這個衝突,Fig-04所示,我們選擇第一項"簽出並自動合并",這意味著以本地的檔案為主,保留差異,系統自動會簽出對應的Log.cs檔案,然後執行簽入即可。
這時候你會問"為什麼不用簽入呢",如果你這樣操作過的話,你會發現這種情況下是沒有簽入動作的,因為你之前就沒有執行"簽出",何來簽入呢?
Fig-04
正確的簽入簽出:
- 我們在編輯檔案的時候,盡量操作單個檔案,而不是像上文中描述的大量操作。
- 在更新檔案的時候,一定記得先簽出,然後再更新檔案(包括上文中的覆蓋檔案的情境),最後再簽入。
- 如果一定要從伺服器上批量擷取檔案,建議勾選"Overwrite all files even if the local version matches the specified version."。