svn is already locked


1.出現這個問題后使用“清理”即"Clean up"功能,如果還不行,就直接到上一級目錄,再執行“清理”,然后再“更新”。

2.有時候如果看到某個包里面的文件夾沒有SVN的標志,直接用“Ctrl+Delete”手工刪除,然后“清理”,最后“更新”或“提交”。

3.有時候有的文件死活無法提交和更新,有lock字樣的提示,:首先點擊該文件,然后getLock,再選中stealLock,然后release lock即可

svn介紹

檢出(Checkout):
  從版本庫取出一個新版本。

 

提交(Commit):
   將對工作副本的修改發送給版本庫。

 

更新(Update):
  下載最新版本庫文件的記錄。

 

鎖定-修改-解鎖:
  1. 一定時間段版本庫的一個文件只允許一個人修改,直至解鎖。
  2. 鎖定(Get lock),解鎖(Release lock)



還原(Revert):
  取消最近一次的操作(只針對客戶端,服務端不做改動)。

 

更新到特定版本(Update to revision):
  本地文件副本,更新為服務器上的指定版本。

 

重命名(Rename):
  對已經納入svn管理的文件進行重命名。

 

添加(Add):
  把文件添加到SVN,即將文件納入SVN管理。

 

刪除(Delete):
  對已近納入SVN管理的文件進行刪除。

 

清理(Clean up):
  SVN更新時,由於一些操作中斷更新(磁盤空間不夠等),可能會造成本地文件被鎖定的情況,
  解決方法:
    1. 使用clean up來清除鎖定。
    2. 若不是本目錄,往上層目錄尋找直至根目錄。
    3. 有時,根目錄都無法clean up,則另選目錄重新Check out。
    4. 如果覺得第3種很麻煩,可以考慮這樣的方法。
      其實SVN加鎖會在.svn(隱藏文件)中生成一個名字叫lock的文件(無后綴),查找所有的,手工刪除。
        然后再嘗試更新,系統可能會提示某個.base文件無法訪問。
      找到它,把相關的文件或其所在的目錄刪除,重新更新,工作量就小多了。

 


分支/基線(Branch/Tag):
  SVN的項目目錄下,有3個子目錄:trunk, branch, tag
    1. trunk: trunk目錄是主目錄,即工作目錄。絕大部分提交、更新操作都發生在這個目錄。
    2. branch: branch目錄是分支目錄,存放當前開發版本的分支版本。
    3. tag: tag目錄是基線目錄,存放已經發布的版本或者重要的基線目錄。這個目錄為只讀。
           如果有bug需要修改,則需要創建基線目錄的分支目錄來修改。

 


重定位(Relocate):
  有時服務器的地址改變了,利用relocate來重新定位服務器的地址。

 


svn的版本號是如何迭代的?
  4個規則:
    1. 版本號從1開始迭代,每次提交使版本號增1.
    2. 每個受版本控制的文件有自己的版本歷史,其第一個版本號為加入時版本庫的版本號。
    3. 版本庫的版本號 = 目前所有受版本控制的文件版本號的最大值。
    4. 版本庫的版本號是連續的,文件版本號非連續。

 

Checkout和Export的差異?
  Checkout出的內容受版本控制,Export出的內容不受版本控制。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM