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

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

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

    posts - 262,  comments - 221,  trackbacks - 0
    【14】svn update與svn revert
    對于svn revert命令,前面我們分別通過“回滾文件內容”,“回滾屬性”,“回滾操作”來給出直觀的認識。現在我們再通過一個稍微復雜的例子來進一步了解svn revet命令。

    假設現在我們的目錄環境如下:
    C:\>svn list E:\Temp\ECoupon
    WebRoot
    /
    doc
    /
    read
    -from-repo.txt
    read
    -from-wc.txt
    src
    /

    前面我們提到對于尚未提交的本地修改,可以使用svn revet回滾。那么如果我們使用svn update來從版本庫同步到本地文件,不也是可以達到同樣的目的嗎?事實是這樣嗎?

    C:\>svn status E:\Temp\ECoupon
    M      E:
    \Temp\ECoupon\read-from-wc.txt

    C:
    \>svn update E:\Temp\ECoupon
    At revision 
    18.

    C:
    \>svn status E:\Temp\ECoupon
    M      E:
    \Temp\ECoupon\read-from-wc.txt

    C:
    \>svn cat E:\Temp\ECoupon\read-from-wc.txt

    C:
    \>type E:\Temp\ECoupon\read-from-wc.txt
    Wrong content, don
    't commit!

    C:
    \>svn diff -r HEAD E:\Temp\ECoupon\read-from-wc.txt
    Index: E:
    /Temp/ECoupon/read-from-wc.txt
    ========================================================
    --- E:/Temp/ECoupon/read-from-wc.txt    (revision 18)
    +++ E:/Temp/ECoupon/read-from-wc.txt    (working copy)
    @@ 
    -0,0 +1 @@
    +Wrong content, don't commit!
    \ No newline at end of file

    可以發現,即便我們執行了svn update操作,本地已經修改的文件仍然不會被回滾到和版本庫一樣的版本。這是因為:

    因為SVN為了保護用戶不小心update操作而覆蓋自己本地的修改,不會對已經被修改但尚未提交的資源進行update操作。像這種情況下只能用svn revert而不能用svn update。

    【15】svn del與svn revert
    好了,那么假如現在我們在修改后臨提交之前發覺這個read-from-wc.txt是不需要的,我們要刪除而不是回滾它了。該怎么做?看看下面的實驗:

    C:\>svn del E:\Temp\ECoupon\read-from-wc.txt
    svn: Use 
    --force to override this restriction
    svn: 
    'E:\Temp\ECoupon\read-from-wc.txt' has local modifications

    C:
    \>svn del E:\Temp\ECoupon\read-from-wc.txt --force
    D         E:
    \Temp\ECoupon\read-from-wc.txt

    C:
    \>svn status E:\Temp\ECoupon
    D      E:
    \Temp\ECoupon\read-from-wc.txt

    上面的實驗我們一共做了2個變更:
     A.修改本地文件read-from-wc.txt
     B.標記刪除本地文件read-from-wc.txt

    和svn update不會對已修改而尚未提交的資源進行update一樣,svn del同樣不會刪除已修改但尚未提交的資源---除非你強制加上--force參數。

    如果此時我們又想反悔了,那么再次執行svn revert命令會有什么后果:

    C:\>svn revert E:\Temp\ECoupon\read-from-wc.txt
    Reverted 
    'E:\Temp\ECoupon\read-from-wc.txt'

    C:
    \>svn status E:\Temp\ECoupon\read-from-wc.txt

    C:
    \>svn diff -r HEAD E:\Temp\ECoupon\read-from-wc.txt

    C:
    \>

    好了,現在文件read-from-wc.txt又回來,但是之前我們對它進行的本地修改也跟著不見了!這是因為svn revert回滾的是所有本地未提交的操作,內容,屬性。所以在回滾刪除操作之時,也會連修改操作也一起回滾。這個教訓告訴我們:

    不要把所有變更都放在最后一次性提交,提交要及時、多次。否則一旦回滾所有其他修改都會跟著撤銷。


    -------------------------------------------------------------
    生活就像打牌,不是要抓一手好牌,而是要盡力打好一手爛牌。
    posted on 2009-12-09 11:19 Paul Lin 閱讀(555) 評論(0)  編輯  收藏 所屬分類: 項目管理
    <2009年12月>
    293012345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    常用鏈接

    留言簿(21)

    隨筆分類

    隨筆檔案

    BlogJava熱點博客

    好友博客

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 久久www免费人成看国产片| 亚洲精品视频久久| 亚洲第一页日韩专区| 精品国产麻豆免费网站| 成年女性特黄午夜视频免费看| 精品久久8x国产免费观看| 99在线观看视频免费| 久久w5ww成w人免费| 午夜无码A级毛片免费视频| 久久中文字幕免费视频| 色欲色香天天天综合网站免费| 久久国产精品免费网站| 日韩精品无码免费一区二区三区| 久久久久国产免费| 57pao一国产成视频永久免费| 最近免费字幕中文大全视频| **一级一级毛片免费观看| 台湾一级毛片永久免费| 在线看片无码永久免费视频| 好男人视频在线观看免费看片| 精品国产免费一区二区| 亚洲男人的天堂一区二区| 亚洲日韩中文字幕在线播放| 亚洲成a人片在线观看中文动漫| 亚洲高清中文字幕| 亚洲xxxx视频| 亚洲AV无码AV男人的天堂不卡 | 亚洲黄色在线网站| 91亚洲国产在人线播放午夜| 久久精品a亚洲国产v高清不卡 | 夜夜亚洲天天久久| 中文字幕亚洲一区二区三区| 国产精品极品美女免费观看 | 好吊妞在线成人免费| 午夜视频免费成人| 免费国产美女爽到喷出水来视频| 国产jizzjizz视频全部免费| 亚洲精品成a人在线观看| 中文字幕第13亚洲另类| 亚洲人成伊人成综合网久久久| 又粗又大又猛又爽免费视频|