分享方式:


取得指令 (Team Foundation 版本控制)

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Visual Studio 2019 |Visual Studio 2022

Team Foundation 版本控制 (TFVC) get 命令會從 Azure DevOps Server 取得或下載最新版本或指定版本的一或多個檔案或資料夾至工作區。 此命令 tf get 提供與 Visual Studio 不同的使用者介面,但程式基本上相同。 如需使用 Visual Studio 取得檔案和資料夾的詳細資訊,請參閱 從伺服器下載 (get) 檔案。

必要條件

請參閱 預設 TFVC 許可權

語法

tf get [itemspec] [/version:versionspec] [/all] [/overwrite] [/force] [/remap]
[/recursive] [/preview] [/noautoresolve] [/noprompt]
[/login:username,[password]]

參數

參數

說明

/all

您可以使用這個選項來還原您不小心從伺服器工作區刪除的專案。 如果您使用建議使用的 本機工作區,則不太可能使用此選項。

TFVC 會維護工作區所包含的所有專案的內部記錄,包括每個專案的版本。 根據預設,當您取得檔案時,如果伺服器上的內部記錄指出工作區已有您取得的版本,則不會擷取專案。 不論內部記錄包含的數據為何,此選項都會取得所有專案。

/force

合併 /all/overwrite

<itemspec>

指定要取得的項目範圍。 您可以指定多個 itemspec 自變數。 itemspec如果未提供 ,系統會以遞歸方式取得目前工作區中的所有專案。

如需語法,請參閱 使用Team Foundation版本控制命令

/login <username>,[<password>]

指定要執行命令的用戶帳戶。 請參閱 使用Team Foundation版本控制命令

/noautoresolve

根據預設,系統會自動嘗試 自動復原所有 衝突。 如需詳細資訊,請參閱解決 Team Foundation 版本控制 衝突。 指定此選項以停用此預設行為。

/noprompt

隱藏 Visual Studio 視窗和對話框的顯示,並將輸出數據重新導向至命令提示字元。 請參閱 使用Team Foundation版本控制命令

/overwrite

根據預設,系統不會在用戶端計算機上擷取可寫入的專案,也就是其只讀屬性。 此選項會覆寫預設行為,並覆寫可寫入的專案,除非取出專案。如果您建議使用本機 工作區 ,則不太可能使用此選項。

/preview

顯示會發生的情況,而不需要實際執行 get 作業。

/recursive

以遞歸方式取得指定目錄和任何子目錄中的專案。 如果您未指定 itemspec,則會隱含此選項。

/remap

/version:<versionspec>

指定要在歷程記錄數據中顯示的最大版本或最小和最大版本。 默認值為 /version:T,是最新版本。

如需語法,請參閱 使用Team Foundation版本控制命令

備註

  • 如果您開始新的工作,建議您先執行 tf get 以從伺服器下載最新的檔案,再簽出檔案並開始工作。 您可以從工作區中的任何資料夾執行 tf get

  • 視需要建立 tf get 磁碟上的資料夾,以包含命令下載的子專案。

  • 您可以使用 History 命令Changeset 命令來檢視專案歷程記錄的相關信息。

  • 如果您擔心工作區中的檔案可能會發生哪些變更,您可以使用 /preview 選項來查看可能發生的變更,而不需要實際實作這些變更。

  • 衝突可能會封鎖您的 get。 衝突的典型原因是嘗試取得您暫止變更的專案。 您可以使用 Resolve 命令 來解決這些衝突。

範例

下列範例假設對應 $/SiteApp/Main/c:\code\SiteApp\Main\ 工作區中的 。

取得工作區中所有專案的最新版本

根據預設, tf get 命令會取得工作區中所有專案的最新版本。 例如,下列命令會以遞歸方式取得 中的所有 $/SiteApp/Main/檔案,包括其所有子資料夾。

c:\code\SiteApp\Main>tf get

以遞歸方式取得資料夾中特定類型的最新版本專案

下列範例會取得 c:\code\SiteApp\Main\SolutionA\Project1 中所有 C# 檔案的最新版本。

c:\code\SiteApp\Main\SolutionA\Project1>tf get *.cs /recursive

取得檔案的最新版本

下列範例會取得 Project1 中最新版的 program.cs

c:\code\SiteApp\Main\SolutionA\Project1>tf get program.cs

取得特定版本的檔案

下列範例會取得 Project1第 8 版program.cs

c:\code\SiteApp\Main\SolutionA\Project1>tf get program.cs;8

取得兩個檔案的最新版本

下列範例會取得 Project1 中最新版的 file1.csfile2.cs

c:\code\SiteApp\Main\SolutionA\Project1>tf get file1.cs file2.cs

同步處理工作區以符合小組程式代碼基底的版本

下列範例會同步處理工作區,以符合建立變更集 15 時存在的程式代碼基底:

c:\code\SiteApp\Main>tf get /v:15
  • 工作區中每個專案的名稱和內容都會變更,以符合其位於伺服器上的狀態。
  • 在該變更集之後刪除的專案會還原至工作區。
  • 在變更集之後新增的專案會從工作區中刪除。

同步處理工作區以符合小組程式代碼基底的標記版本

下列範例會同步處理工作區,以符合標示LastKnownGood的程式代碼基底中的專案:

c:\code\SiteApp\Main>tf get /v:LLastKnownGood
  • 工作區中每個已標記專案的名稱和內容都會變更,以符合其位於伺服器上的狀態。
  • 已刪除的已標記專案會還原至工作區。
  • 伺服器上未加上標籤的專案會從工作區中刪除。