認識鎖定類型
您可以使用 Lock 命令來暫不允許對原始檔控制伺服器中特定檔案或資料夾的變更。如果您想要變更工作區中的某個項目,然後簽入,但不強制解決任何合併衝突,這個命令就很有用。一次只有一位使用者可以鎖定特定檔案或資料夾。如果您想要持續不允許使用者存取某個項目,就應該改用 Permission Command。
鎖定類型
Team Foundation 提供兩種鎖定類型:「簽入鎖定」和「簽出鎖定」。
簽入鎖定
簽入鎖定的限制比簽出鎖定少。在您套用簽入鎖定後,使用者可以繼續在其他工作區中對該項目進行本機變更。但必須等到明確移除項目的簽入鎖定,或透過簽入檔案的變更來隱含移除鎖定後,才能簽入這些變更。
簽出鎖定
在 Visual Studio Team Foundation Server 2012簽出鎖定,通常不是有效的因為本機工作區 決定使用本機還是伺服器工作區(請參閱)。特別是,簽出鎖定為:
無法執行,因為其他使用者可能在使用本機工作區。
無法使用,如果您在使用本機工作區。
停用,如果您的 Team 專案集合的 Administrators 安全性群組的成員讓您的小組的伺服器工作區非同步簽出。
簽出鎖定可防止使用伺服器的工作區的使用者簽出以及變更已鎖定的項目在其工作區。在非自己的工作區中,您無法將簽出鎖定套用至具有任何暫止的變更之項目。
鎖定的運作方式
如果某個檔案在您鎖定時已簽出,其簽出記錄就會修改成包含新的鎖定類型。如果檔案沒有簽出,則工作區的暫止變更集中就會加入「鎖定」變更。與簽出命令不同之處在於,Lock 命令不會自動讓檔案成為可編輯狀態。
當您在項目已鎖定的工作區中簽入暫止的變更時,Team Foundation 就會自動解除鎖定該項目。如果您使用復原命令來復原檔案的暫止變更,也會一併解除鎖定。
資料夾的鎖定是隱含遞迴。在鎖定某個資料夾時,除非想對具有簽入鎖定之資料夾中的檔案,套用更嚴格的簽出鎖定,否則您不需要鎖定它所包含的檔案。
一次只有一位使用者可以鎖定特定檔案或資料夾。您可以使用 Status 命令,了解 Team Foundation 版本控制伺服器中鎖定哪些檔案以及進行鎖定的人員。
鎖定可以當做獨立作業進行,也可以當做許多其他作業的一部分進行,包括重新命名、簽出、刪除、取消刪除、合併、分支以及加入至原始檔控制。當您將鎖定項目當做加入至原始檔控制或分支作業的一部分進行時,Team Foundation 就會鎖定即將建立新項目的伺服器路徑。這樣就會不允許其他使用者將檔案加入或分支到相同的位置。當您使用重新命名命令來鎖定項目時,就會一併鎖定舊和新的伺服器路徑。
解除鎖定項目
您可以使用解除鎖定命令來明確解除鎖定項目,也可以在簽入時隱含解除鎖定項目。當您將暫止的變更簽入鎖定的項目時,Team Foundation 就會移除任何鎖定。
注意事項 |
---|
根據預設,UnlockOther 使用權限只會授與系統管理員。如果您擁有 UnlockOther 權限,可以使用 Lock Command,移除其他使用者工作區中某個項目的鎖定。 |