<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ### 標簽 另一個常見的版本控制系統概念是標簽(*tag*),一個標簽只是一個項目某一時間的“快照”,在Subversion里這個概念無處不在―每一次提交的修訂版本都是一個精確的快照。 然而人們希望更人性化的標簽名稱,像`release-1.0`。他們也希望可以對一個子目錄快照,畢竟,記住release-1.0是修訂版本4822的某一小部分不是件很容易的事。 ### 建立最簡單的標簽 **svn copy**再次登場,你希望建立一個`/calc/trunk`的一個快照,就像`HEAD`修訂版本,建立這樣一個拷貝: ~~~ $ svn copy http://svn.example.com/repos/calc/trunk \ http://svn.example.com/repos/calc/tags/release-1.0 \ -m "Tagging the 1.0 release of the 'calc' project." Committed revision 351. ~~~ 這個例子假定`/calc/tags`目錄已經存在(如果不是,見[svn mkdir]( "svn mkdir")),拷貝完成之后,一個表示當時`HEAD`版本的/calc/trunk目錄的鏡像已經永久的拷貝到`release-1.0`目錄。當然,你會希望更精確一點,以防其他人在你不注意的時候提交修改,所以,如果你知道`/calc/trunk`的版本350是你想要的快照,你可以使用**svn copy**加參數 `-r 350`。 但是等一下:標簽的產生過程與建立分支是一樣的?是的,實際上在Subversion中標簽與分支沒有區別,都是普通的目錄,通過copy命令得到,與分支一樣,一個目錄之所以是標簽只是*人們*決定這樣使用它,只要沒有人提交這個目錄,它永遠是一個快照,但如果人們開始提交,它就變成了分支。 如果你管理一個版本庫,你有兩種方式管理標簽,第一種方法是禁止命令:作為項目的政策,我們要決定標簽所在的位置,確定所有用戶知道如何處理拷貝的目錄(也就是確保他們不會提交他們),第二種方法看來很過分:使用訪問控制腳本來阻止任何想對標簽目錄做的非拷貝的操作(見[第6章 *配置服務器*]( "第6章配置服務器"))這種方法通常是不必要的,如果一個人不小心提交了到標簽目錄一個修改,你可以簡單的取消,畢竟這是版本控制啊。 ### 建立復雜的標簽 有時候你希望你的“快照”能夠很復雜,而不只是一個單獨修訂版本的一個單獨目錄。 舉個例子,假定你的項目比我們的的例子`calc`大的多:假設它保存了一組子目錄和許多文件,在你工作時,你或許決定創建一個包括特定特性和Bug修正的工作拷貝,你可以通過選擇性的回溯文件和目錄到特定修訂版本(使用**svn update -r**)來實現,或者轉換文件和目錄到特定分支(使用**svn switch**),這樣做之后,你的工作拷貝成為版本庫不同版本和分支的司令部,但是經過測試,你會知道這是你需要的一種精確數據組合。 是時候進行快照了,拷貝URL在這里不能工作,在這個例子里,你希望把本地拷貝的布局做鏡像并且保存到版本庫中,幸運的是,**svn copy**包括四種不同的使用方式(在第9章可以詳細閱讀),包括拷貝工作拷貝到版本庫: ~~~ $ ls my-working-copy/ $ svn copy my-working-copy http://svn.example.com/repos/calc/tags/mytag Committed revision 352. ~~~ 現在在版本庫有一個新的目錄`/calc/tags/mytag`,這是你的本地拷貝的一個快照―混合了修訂版本,URL等等。 一些人也發現這一特性一些有趣的使用方式,有些時候本地拷貝有一組本地修改,你希望你的協作者看到這些,不使用**svn diff**并發送一個不定文件(不會捕捉到目錄修改),而是使用**svn copy**來“上傳”你的工作拷貝到一個版本庫的私有區域,你的協作者可以選擇完整的取出你的工作拷貝,或使用**svn merge**來接受你的精確修改。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看