Shelve 命令
會在執行 Visual Studio Team Foundation Server 的伺服器上儲存一組暫止變更、暫止簽入提示、註解以及關聯的工作項目清單,而不需實際將其簽入至版本控制伺服器。
必要的使用權限
如果您想要使用 shelve 命令來刪除擱置集,您必須是擱置集擁有者,或是您的 [管理擱置的變更] 權限必須設定為 [允許]。 如需詳細資訊,請參閱Team Foundation Server 使用權限。
tf shelve [/replace] [/comment:("comment"|@commentfile)] [shelvesetname] [/validate][/noprompt] [/login:username,[password]]
tf shelve [/move] [/replace] [/comment:("comment"|@commentfile)]
[/recursive] [shelvesetname] itemspec [/validate] [/noprompt] [/login:username,[password]]
tf shelve /delete shelvesetname[;owner] [/login:username,[password]] [/collection:TeamProjectCollectionUrl]
參數
引數 |
描述 |
---|---|
commentfile |
指定檔案的檔案系統路徑,將從該檔案中讀取擱置集的註解。 |
comment |
指定擱置集的註解。 |
itemspec |
辨別要擱置的檔案或資料夾。 依照預設,如果未指定這個參數,目前工作區中的所有暫止變更都會擱置。 如需 Team Foundation 如何剖析項目規格以判斷哪些項目位於範圍內的詳細資訊,請參閱命令列選項。 |
shelvesetname |
指定要依其從 Team Foundation 伺服器擷取擱置集的名稱。 您只有在也指定了 /replace 時,才可以指定現有的 shelvesetname 和 owner 組合。 同時也必須為這個參數提供值。 |
owner |
依照使用者名稱辨別擱置集目前的或所要的擁有人。 依照預設,如果沒有指定,則擱置集的擁有權會指派給目前的使用者。 |
username |
提供 /login 選項的值。 您可以將使用者名稱值指定成網域\ 使用者名稱或使用者名稱的格式。 |
TeamProjectCollectionUrl |
Team 專案集合的 URL (例如 http://myserver:8080/tfs/DefaultCollection/),該集合包含您要擱置的檔案或資料夾。 |
選項 |
描述 |
---|---|
/move |
在擱置作業成功後從工作區移除暫止變更。 |
/replace |
使用與您指定之具有相同名稱和擁有人的擱置集取代現有的擱置集。 |
/delete |
刪除指定的擱置集。 只有 /server 選項可以與這個選項搭配使用。 如果沒有包含 /noprompt 選項,則在指定了 /delete 選項時會出現確認訊息。 |
/comment |
加入描述已擱置變更的指定註解。 |
/recursive |
如果提供的項目規格是資料夾,則擱置指定擱置集資料夾中的所有項目、其子資料夾和其中的所有項目。 |
/noprompt |
抑制任何要求您輸入的提示。 |
/validate |
只有在未與 /noprompt 搭配時才有效。 這個選項會在 [擱置 - 原始程式檔] 對話方塊開啟時選取驗證核取方塊。 當驗證核取方塊選取時,對話方塊會評估簽入原則,並驗證已填入必要的簽入提示。 在由其他人發出變更以供檢閱以及簽入時,這個選項很有用。 |
/login |
指定使用者名稱和密碼,以便透過 Team Foundation Server 驗證使用者。 |
/collection |
指定 Team 專案集合。 |
備註
tf 命令列公用程式的 shelve 命令會在 Team Foundation Server 的擱置集中,備份暫止的變更、關聯的工作項目清單、進行中的簽入提示以及註解。 「擱置集」(Shelveset) 與尚未認可到伺服器的變更集很類似。 與變更集類似,擱置集可以由具有足夠權限的使用者從伺服器擷取到本機工作區。
擱置是簽入尚未經過足夠測試的暫止變更的一種方法。 可在想要中斷工作時使用擱置:
與其他的開發人員或測試人員共用一組本機工作檔案,而不需將變更簽入版本控制伺服器。
暫時保留一組暫止變更而不將其簽入,使您可以先處理較高優先順序的問題。 在完成高優先順序的工作後,可以使用 Unshelve 命令還原已擱置的變更。
如果包含 /move 選項,shelve 命令就會將所有擱置的檔案修訂復原為「基本工作區版本」(Base Workspace Version),也就是從伺服器擷取到目前工作區的最後版本。 具體來說,/move 選項可確定擱置的所有項目都會進行下列作業:
使用 Undo 復原已擱置的變更。 已擱置新增的檔案會從工作區中刪除。
所有檔案的基本工作區版本若有暫止版本存在,都會從伺服器擷取到目前的工作區。
目前工作區中的所有項目都會標示為唯讀。
如果包含 /delete 選項,Team Foundation 便會從 Team Foundation 伺服器永久地移除指定的擱置集。
如需如何尋找 tf 命令列公用程式的詳細資訊,請參閱 Tf 命令列公用程式命令。
範例
下列範例會在 Team Foundation Server 上建立名為 Reflector_BuddyTest 的新擱置集、將擁有權指派給使用者 Hans,然後將目前工作區中的所有項目回復為最近執行 get 作業期間下載的最新版本,並設定唯讀狀態。
c:\projects> tf shelve Reflector_BuddyTest;Hans /move
下列範例會從伺服器刪除現有的擱置集 "new-feature"、建立使用該名稱的新擱置集,並保留目前工作區中的所有暫止變更。
c:\projects> tf shelve new-feature /replace
下列範例會建立名為 HelloWorld_TestMe 的擱置集,其中包含對 C:\projects 工作資料夾和其子資料夾中所有 .cs 檔案的暫止變更。
c:\projects> tf shelve HelloWorld_TestMe c:\projects\*.cs /recursive
下列範例會刪除 HelloWorld_24 擱置集。
c:\projects> tf shelve HelloWorld_24 /delete