<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 134,comments - 22,trackbacks - 0

    花了點時間把svnbook看了遍,對于svn有了個比較好的認識。svn info時,修訂版和最后修改的修訂版總是讓我感覺很困惑。要搞明白這個需要對下面幾個關鍵字有所了解。

    HEAD:版本庫中的最新版本。

    COMMITED:文件最后提交生成的版本號。

    PREV:文件倒數第二次提交生成的版本號。

    BASE:目錄簽出或者簽入生成的版本號。

    HEAD、COMMITED和PREV比較好理解,BASE比較難于理解。假設一個目錄下有兩個文件configure.ac和Makefile.am,第一次將它們check out出來時,會生成一個新的revision,這個便是BASE了。此時使用svn info configure.ac/Makefile.am可以發現它們的修訂版是一樣的,但是最后修改的修訂版不同。這里的修訂版對應其實就是BASE,而最后修改的修訂版則是COMMITED。插一句,很多人很容易誤解為啥修訂版號和最后修改的修訂版號不一致。

    若將configure.ac修改并check in,這個時候會生成一個新的revision,configure.ac的BASE和COMMITED的值相當。而svn info Makefile.am,發現它的BASE和COMMITED沒有改變。svn up一下,發現Makefile.am的BASE會變成最新的,和configure.ac相同。

    簽出代碼庫。

    1[henshao@henshao ~/svn]$ svn co file:///Users/henshao/svn/dogg/learn_svn/ learn_svn2
    2A    learn_svn2/trunk
    3A    learn_svn2/trunk/configure.ac
    4A    learn_svn2/trunk/Makefile.am
    5Checked out revision 17.

    顯示修訂版(BASE)和最后修改的修訂版(COMMITED)。

    01[henshao@henshao ~/svn/learn_svn2/trunk]$ svn st -v
    02                17       17 henshao      .
    03                17       17 henshao      configure.ac
    04                17       15 henshao      Makefile.am
    05  
    06[henshao@henshao ~/svn/learn_svn2/trunk]$ svn info Makefile.am
    07Path: Makefile.am
    08Name: Makefile.am
    09URL: file:///Users/henshao/svn/dogg/learn_svn/trunk/Makefile.am
    10Repository Root: file:///Users/henshao/svn/dogg
    11Repository UUID: 7ee338c4-a6e3-468b-b576-d1b767dd90e2
    12Revision: 17
    13Node Kind: file
    14Schedule: normal
    15Last Changed Author: henshao
    16Last Changed Rev: 15
    17Last Changed Date: 2011-06-23 17:03:08 +0800 (四, 23  6 2011)
    18Text Last Updated: 2011-06-23 18:37:50 +0800 (四, 23  6 2011)
    19Checksum: 5b211a202b8ae001a86a557108d4989c

    修改Makefile.am并簽入看看。

    01[henshao@henshao ~/svn/learn_svn2/trunk]$ svn ci Makefile.am -m "LD_ADD add ssl library"
    02Sending        Makefile.am
    03Transmitting file data .
    04Committed revision 18.
    05  
    06[henshao@henshao ~/svn/learn_svn2/trunk]$ svn info Makefile.am
    07Path: Makefile.am
    08Name: Makefile.am
    09URL: file:///Users/henshao/svn/dogg/learn_svn/trunk/Makefile.am
    10Repository Root: file:///Users/henshao/svn/dogg
    11Repository UUID: 7ee338c4-a6e3-468b-b576-d1b767dd90e2
    12Revision: 18
    13Node Kind: file
    14Schedule: normal
    15Last Changed Author: henshao
    16Last Changed Rev: 18
    17Last Changed Date: 2011-06-23 18:41:41 +0800 (四, 23  6 2011)
    18Text Last Updated: 2011-06-23 18:41:31 +0800 (四, 23  6 2011)
    19Checksum: e4cc7bf424ff911c9619060a5f1c1030
    20  
    21[henshao@henshao ~/svn/learn_svn2/trunk]$ svn info configure.ac
    22Path: configure.ac
    23Name: configure.ac
    24URL: file:///Users/henshao/svn/dogg/learn_svn/trunk/configure.ac
    25Repository Root: file:///Users/henshao/svn/dogg
    26Repository UUID: 7ee338c4-a6e3-468b-b576-d1b767dd90e2
    27Revision: 17
    28Node Kind: file
    29Schedule: normal
    30Last Changed Author: henshao
    31Last Changed Rev: 17
    32Last Changed Date: 2011-06-23 17:44:51 +0800 (四, 23  6 2011)
    33Text Last Updated: 2011-06-23 18:37:50 +0800 (四, 23  6 2011)
    34Checksum: 6b49ae8f3346120311e11843c23b0b00

    svn update一下看看。

    01[henshao@henshao ~/svn/learn_svn2/trunk]$ svn up
    02At revision 18.
    03  
    04[henshao@henshao ~/svn/learn_svn2/trunk]$ svn info configure.ac
    05Path: configure.ac
    06Name: configure.ac
    07URL: file:///Users/henshao/svn/dogg/learn_svn/trunk/configure.ac
    08Repository Root: file:///Users/henshao/svn/dogg
    09Repository UUID: 7ee338c4-a6e3-468b-b576-d1b767dd90e2
    10Revision: 18
    11Node Kind: file
    12Schedule: normal
    13Last Changed Author: henshao
    14Last Changed Rev: 17
    15Last Changed Date: 2011-06-23 17:44:51 +0800 (四, 23  6 2011)
    16Text Last Updated: 2011-06-23 18:37:50 +0800 (四, 23  6 2011)
    17Checksum: 6b49ae8f3346120311e11843c23b0b00
    18  
    19[henshao@henshao ~/svn/learn_svn2/trunk]$ svn st -v
    20                18       18 henshao      .
    21                18       17 henshao      configure.ac
    22                18       18 henshao      Makefile.am

    svn一個版本庫的revision是全局的,不管是在trunk還是branch,也不管使用merge合并代碼還是消除修改,簽入和簽出都會生成一個新的revision。當項目中一個文件簽入時會導致別的文件的BASE暫時低于HEAD,但是一旦update,二者將保持一致。

    posted on 2012-08-23 13:13 何克勤 閱讀(3396) 評論(0)  編輯  收藏 所屬分類: GNU Linux/Unix
    主站蜘蛛池模板: 国产亚洲?V无码?V男人的天堂 | 国产亚洲综合一区柠檬导航| 国产在线jyzzjyzz免费麻豆 | 男人的天堂亚洲一区二区三区| 二个人看的www免费视频| 亚洲人成网国产最新在线| 亚洲AV日韩AV鸥美在线观看| 亚洲AV无码乱码精品国产| 无码人妻精品一二三区免费| 特级无码毛片免费视频尤物| av网站免费线看| 美女扒开屁股让男人桶爽免费| 精品久久久久久亚洲精品| 亚洲无线电影官网| 亚洲av无码无在线观看红杏| 伊人久久大香线蕉亚洲| 亚洲精品国产精品国自产观看| 日韩中文无码有码免费视频| 国产啪精品视频网免费| 亚洲美女视频免费| 69视频免费在线观看| 一个人免费日韩不卡视频| 久操视频免费观看| 国产无遮挡裸体免费视频在线观看| 人妻免费久久久久久久了| 美女无遮挡免费视频网站| MM1313亚洲精品无码久久| 亚洲高清乱码午夜电影网| 亚洲影院天堂中文av色| 亚洲国产综合精品中文第一| 亚洲午夜成激人情在线影院| 亚洲一区二区三区不卡在线播放| 亚洲激情校园春色| 91亚洲视频在线观看| 亚洲乱码无限2021芒果| 亚洲日本人成中文字幕| 亚洲国产区男人本色在线观看| 亚洲偷自精品三十六区| 中文字幕亚洲综合久久综合| 亚洲av午夜电影在线观看| 国产亚洲精品免费|