• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            大龍的博客

            常用鏈接

            統(tǒng)計

            最新評論

            Subversion使用“鎖定-編輯-解鎖”模型 --- 轉(zhuǎn)

            Subversion使用與CVS相似的工作模型,也就是“拷貝-修改-合并”,但是有時候還是很有必要使用“鎖定-編輯-解鎖”模型,例如對于二進制文件,或者其他不太適合合并的文件。

            屬性在《使用Subversion進行版本控制》這本書里也被稱為元數(shù)據(jù),是附加到版本控制下的 文件之上的屬性,就像最后的修改日期是一個文件的屬性一樣,你可以為Subversion控制之下的文件和目錄設(shè)置自定義的屬性。關(guān)于屬性的詳細信息可以 看:http://www.subversion.org.cn/svnbook/1.2 /svn.advanced.locking.html#svn.advanced.locking.lock-communication。

            在Subversion 里是通過內(nèi)置的屬性“svn:needs-lock”實現(xiàn)“鎖定-編輯-解鎖”模型的,例如我們有一個word文件“介紹.doc”,大家很清楚Word 文件是二進制格式(據(jù)說以后都是XML的,但是可能也無法靈活的合并),不可能使用“拷貝-修改-合并”模型,所以我們要使用“鎖定-編輯-解鎖”模型。 你可以將它設(shè)置屬性“svn:needs-lock”,然后提交,之后其他人在更新這個文件的時候,就會得到一個只讀的文件,他們想修改這個文件必須首先 獲得鎖,獲得鎖的過程會將文件置為可寫,而其他人此時如果想得到鎖就會發(fā)現(xiàn)做不到,只有得到鎖的人放棄鎖定,別人才能得到鎖,繼續(xù)工作。下面分別講述了如 何使用svn命令行和TortoiseSVN設(shè)置鎖和使用鎖。

            1) 設(shè)定“svn:needs-lock”屬性

            使用命令行鎖定“介紹.doc”:

            svn propset svn:needs-lock 'x' 介紹.doc

            運行這個命令后,“介紹.doc”就已經(jīng)是設(shè)置了“svn:needs-lock ”,但為了使之生效還要運行“svn commit”,之后其他用戶update的時候就會發(fā)現(xiàn)這個文件已經(jīng)是只讀的了。需要注意的是我們設(shè)置的屬性值是“x”,實際上任意值都可以, Subversion會忽略其內(nèi)容。

            使用TortoiseSVN設(shè)定屬性也很簡單:

            “介紹.doc”右鍵選中- >屬性->Subversion選項夾->properties->add,然后在彈出的窗口中的property name選擇“svn:needs-lock”,值任意,然后選擇OK。之后再提交“介紹.doc”即可。

            2)獲取鎖

            在設(shè)定了這個屬性之后,我們要想修改“介紹.doc”,就必須首先獲得鎖,使用命令行操作如下:

            svn lock 介紹.doc

            這樣“介紹.doc”就變成了可寫文件,你可以進行編輯修改了,這個時候如果有人和你一樣期望獲得這個文件的鎖就會得到錯誤的提示,表示文件已經(jīng)被你鎖定了。

            使用TortoiseSVN的操作依然簡單,“介紹.doc”右鍵選中-> TortoiseSVN -> Get Lock... ,然后輸入鎖定的注釋,選擇“OK”,既完成了鎖定。

            3)釋放鎖

            當(dāng)你完成了修改,選擇提交后,默認就會釋放鎖,別人就可以重新獲得鎖。當(dāng)然你也可以放棄修改,直接選擇釋放鎖,操作如下:

            svn unlock 介紹.doc

            這樣“介紹.doc”就重新變成只讀,別人就可以獲得鎖并進行修改了。

            使用TortoiseSVN的操作為,“介紹.doc”右鍵選中-> TortoiseSVN -> Release Lock,然后選擇確認即可。

            posted on 2012-12-15 23:43 大龍 閱讀(307) 評論(0)  編輯 收藏 引用


            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            久久婷婷五月综合97色一本一本| 7777久久久国产精品消防器材| 一本一本久久a久久综合精品蜜桃| 噜噜噜色噜噜噜久久| 国产高潮国产高潮久久久91 | 久久天天躁狠狠躁夜夜av浪潮 | 热99RE久久精品这里都是精品免费 | 国内精品久久久久| 欧美伊香蕉久久综合类网站| 88久久精品无码一区二区毛片 | 国内精品伊人久久久久影院对白| 亚洲国产精品无码久久久久久曰 | 久久夜色精品国产www| 亚洲国产另类久久久精品小说 | 一本一本久久A久久综合精品| 无码国产69精品久久久久网站 | 曰曰摸天天摸人人看久久久| 国产A级毛片久久久精品毛片| 伊人色综合九久久天天蜜桃| 亚洲αv久久久噜噜噜噜噜| 国产午夜精品久久久久九九电影| 久久狠狠爱亚洲综合影院| 99精品伊人久久久大香线蕉| 伊人久久综合无码成人网| 精品久久久久久无码中文野结衣| 中文字幕人妻色偷偷久久| 久久精品国产72国产精福利| 国产V综合V亚洲欧美久久| 国产精品亚洲综合久久| 久久精品国产69国产精品亚洲| 久久天天躁狠狠躁夜夜av浪潮 | 精品国产青草久久久久福利| 久久九九青青国产精品| 少妇人妻综合久久中文字幕| 激情五月综合综合久久69| 久久精品人人做人人妻人人玩| 色8激情欧美成人久久综合电| 91精品国产91久久久久久青草| 国内精品久久久久久99蜜桃| 亚洲综合伊人久久综合| 狠狠色狠狠色综合久久|