更新

當您在「工作台」中處理某個專案時, 您團隊的其他成員可能正在確定變更至儲存庫中該專案的副本。 若要取得這些變更,您可以「更新」「工作台」來符合分支的狀態。您會看到的變更將會是您的「工作台」專案被配置為要共用的分支所特有的。您可控制您選擇更新的時間。

您可以從兩個地方發出更新指令:團隊 > 更新功能表或同步化檢視畫面。為了瞭解這兩個指令之間的差異, 請務必知道三種不同類別的送入變更。

當您選取團隊 > 更新時, 將會以上述全部三種類型的送入變更更新本端資源的內容。若是非衝突及可自動合併的衝突, 則不需要其他的動作(以可自動合併的衝突而言,變更的本端資源會移至字首為".#"的檔案,以免其非為使用者想要的自動合併)。然而,若是非可自動合併的衝突, 會使用特殊的 CVS 特有標記文字(針對 ASCII 檔案)將衝突合併到本端資源中, 或是將變更的本端資源移至字首為".#"的檔案(針對二進位檔案)。這符合 CVS 指令行行為,但是在與 Eclipse 自動建置機制結合時可能會有問題。此外,在更新任何本端資源之前,最好先知道有什麼送入變更。這些問題由「同步化」檢視畫面處理。

若要在送入模式中開啟「同步化」檢視畫面:

  1. 在「導覽器」檢視畫面中,選取要更新的資源。
  2. 從所選取資源的蹦現功能表中,選取團隊 > 與儲存庫同步化。「同步化」檢視畫面將會開啟。
  3. 在「同步化」檢視畫面的工具列上,按一下送入模式按鈕,以過濾出任何您可能會有的經修改的「工作台」資源(送出的變更)。

在送入模式中,您將會看到自前次更新後確認至分支的變更。檢視畫面將會指出每一個送入變更的類型(非衝突、可自動合併的衝突或非可自動合併的衝突)。有兩個更新指令(可從檢視畫面中的任何資源的快速功能表中存取)可用來處理不同類型的衝突:從儲存庫更新置換並更新。當您在「同步化」檢視畫面中選取從儲存庫更新指令時, 只會處理非衝突的變更,而將任何具有可自動合併的衝突或非可自動合併的衝突之檔案留在檢視畫面中(任何已順利處理的檔案會從檢視畫面移除)。 置換並更新指令作用於兩種類型的衝突。 在選取這個指令之後,在嘗試合併之前會先提示您, 並詢問您要自動合併內容或是要以儲存庫檔案加以改寫。如果您選擇要自動合併, 則只會處理可自動合併的衝突,同時送入變更會與本端變更自動合併。否則,將會處理所有的衝突,並將以遠端內容取代本端資源。這個「取代」行為通常不是理想的。稍後會說明替代方案。

若要更新非衝突的及可自動合併的檔案:

  1. 「同步化」檢視畫面頂端的「結構比較」窗格包含具有送入變更之資源的階層。
  2. 選取未衝突的檔案,然後從蹦現功能表中選擇從儲存庫更新。 這將會更新選取的資源,並從檢視畫面加以移除。
  3. 選取可自動合併的衝突,然後從蹦現功能表中選擇置換及更新。選擇只更新可自動合併的資源,然後在被提示時按一下「確定」。 這將會更新選取的資源,並從檢視畫面加以移除。

如果您的本端「工作台」包含任何無法自動合併的送出變更以及來自分支的送入變更, 則您可以手動方式將差異合併到「工作台」中,而不是執行置換並更新, 其步驟如下:

  1. 在「結構比較」窗格內,如果資源清單中有衝突(以紅色箭頭代表),請加以選取。
  2. 在「同步化」檢視畫面的「文字比較」區域中, 本端「工作台」資料呈現在左邊,儲存庫分支資料呈現在右邊。請查驗這兩者之間的差異。
  3. 請使用文字比較區域來合併任何變更。您可以從檔案的儲存庫修訂將變更複製到檔案的「工作台」副本, 以及儲存合併的「工作台」檔案(使用左窗格中的蹦現功能表)。
  4. 一旦將遠端變更合併到本端檔案後,請從蹦現功能表中選擇標記為已合併。這會將本端檔案標記為已更新,可讓您的變更被確認。

附註: 當您更新時,儲存庫的內容並不會變更。當您接受送入變更時, 這些變更會套用至您的「工作台」。儲存庫只有在您確定送出變更時才會改變。

要訣: 若在「結構比較」窗格中選取送入變更集的上代, 將會對所有適當的子項執行作業。 例如,選取最上面的資料夾,然後選取從儲存庫更新, 將會處理所有非衝突的送入變更,而不處理所有的其他送入變更。

警告: 上述說明的置換並更新指令的行為僅適用於「同步化」檢視畫面的送入模式。在檢視畫面的送入/送出模式中, 送入變更與衝突的行為相同,但是此指令會將送出的變更回復成儲存庫的內容。在送入/送出模式中使用這個指令時,請務必小心。

相關概念
與 CVS 的團隊程式設計
使用 CVS 儲存庫同步化

相關作業
確定中
解決衝突
比較資源
版本控制生命週期:新增和忽略資源

相關參照
CVS
同步化檢視畫面

 
Copyright IBM Corporation and others 2000, 2003