posts - 262,  comments - 221,  trackbacks - 0

          【8】添加新的內(nèi)容到版本控制


          在上一節(jié)中我向E:\Temp\ECoupon添加了三個(gè)目錄:doc、src、WebRoot,但是目前他們還沒有被加入到版本控制中。SVN提供了svn add命令來(lái)幫我們把資源加入到版本控制中。執(zhí)行如下命令: 

           

          c:\>svn add E:\Temp\doc E:\Temp\src E:\Temp\WebRoot

          我們可以看到如下的輸出
          A  (bin)  E:\Temp\ECoupon\doc\UML Diagram\ECoupon activity diagram.png
          A  (bin)  E:
          \Temp\ECoupon\doc\UML Diagram\ECoupon class assoication diagram.png
          A  (bin)  E:
          \Temp\ECoupon\doc\UML Diagram\ECoupon user case diagram.png
          A  (bin)  E:
          \Temp\ECoupon\doc\UML Diagram\ecoupon.umr
          A  (bin)  E:
          \Temp\ECoupon\doc\UML Diagram\WebPage flow.doc
          A         E:
          \Temp\ECoupon\src
          A         E:
          \Temp\ECoupon\src\applicationContext.xml
          A         E:
          \Temp\ECoupon\src\com
          A         E:
          \Temp\ECoupon\src\com\three

          將會(huì)在終端看到很多輸出,其中A表示新增內(nèi)容。默認(rèn)情況下如果svn add 的對(duì)象是一個(gè)目錄,則目錄下的所有內(nèi)容都會(huì)被加入版本控制。如果我們不想這樣做,而是只添加目錄(通常情況下發(fā)生在日志目錄下)。我們?cè)趫?zhí)行svn add 命令的時(shí)候加上參數(shù)--non-recursive(-N)。

          此時(shí)再執(zhí)行svn status命令會(huì)如何呢?
          C:\>svn status E:\Temp\ECoupon\doc
          A      E:
          \Temp\ECoupon\doc
          A      E:
          \Temp\ECoupon\doc\Requirement
          A      E:
          \Temp\ECoupon\doc\Requirement\ecoupon-requirement.txt
          A      E:
          \Temp\ECoupon\doc\Requirement\ECoupon功能列表.xls
          A      E:
          \Temp\ECoupon\doc\Requirement\tip.txt
          A      E:
          \Temp\ECoupon\doc\UML Diagram
          A      E:
          \Temp\ECoupon\doc\UML Diagram\ECoupon class assoication diagram.png
          A      E:
          \Temp\ECoupon\doc\UML Diagram\WebPage flow.doc
          A      E:
          \Temp\ECoupon\doc\UML Diagram\ecoupon.umr
          A      E:
          \Temp\ECoupon\doc\UML Diagram\ECoupon user case diagram.png
          A      E:
          \Temp\ECoupon\doc\UML Diagram\ECoupon activity diagram.png
          A      E:
          \Temp\ECoupon\doc\CustomerClas

          關(guān)于svn add命令我們有2個(gè)需要注意的地方:
           A.和svn status命令一樣,svn add命令只能使用PATH,而不能使用URL作為參數(shù)
           B.當(dāng)svn add命令執(zhí)行完畢后,相關(guān)資源并不會(huì)馬上立即被加入版本控制中,需要再執(zhí)行一次commit

          C:\>svn commit E:\Temp\ECoupon -"add doc,src,webroot folder for project"

          我們將可以看到如下類似輸出
          Adding         E:\Temp\ECoupon\src\com\three\hk\ecoupon\util\Pager.java
          Adding         E:
          \Temp\ECoupon\src\com\three\hk\ecoupon\util\config.properties
          Adding         E:
          \Temp\ECoupon\src\hibernate.cfg.xml
          Adding         E:
          \Temp\ECoupon\src\log4j.properties
          Transmitting file data .

          .
          Committed revision 
          6.

          【9】更新本地工作副本
          在團(tuán)隊(duì)合作的項(xiàng)目,經(jīng)常是幾個(gè)人分別維護(hù)不同的部分。為了保證自己的代碼始終是最新的,我們需要經(jīng)常執(zhí)行更新操作---把版本庫(kù)的最新內(nèi)容同步更新到本地。在SVN中可以通過(guò)svn update命令來(lái)達(dá)到目的。

          現(xiàn)在我們已經(jīng)把新的資源添加到版本庫(kù)了,那是不是代表現(xiàn)在我們本地的工作拷貝就是最新版本的了呢?
          C:\>svn info E:\Temp\ECoupon
          Path: E:
          \Temp\ECoupon
          URL: http:
          //localhost:8000/svn/Workspace/Ericsson/ECoupon
          Repository Root: http:
          //localhost:8000/svn/Workspace
          Repository UUID: 06f3a259
          -b3b5-ff4e-9a70-52e8834f1976
          Revision: 
          5
          Node Kind: directory
          Schedule: normal
          Last Changed Author: qlinpen
          Last Changed Rev: 
          4
          Last Changed 
          Date2009-12-07 17:33:17 +0800 (星期一, 07 十二月 2009)


          C:
          \>svn info http://localhost:8000/svn/Workspace/Ericsson/ECoupon
          Path: ECoupon
          URL: http:
          //localhost:8000/svn/Workspace/Ericsson/ECoupon
          Repository Root: http:
          //localhost:8000/svn/Workspace
          Repository UUID: 06f3a259
          -b3b5-ff4e-9a70-52e8834f1976
          Revision: 
          6
          Node Kind: directory
          Last Changed Author: qlinpen
          Last Changed Rev: 
          6
          Last Changed 
          Date2009-12-08 12:05:15 +0800 (星期二, 08 十二月 2009)

          可以見到,我們本地工作副本的版本號(hào)依然是5,而不是6。這意味著雖然剛剛commit的操作由我們發(fā)出,但如果我們不主動(dòng)從版本庫(kù)更新,SVN是不會(huì)在commit后主動(dòng)更新本地工作副本的版本的。

          我們需要在每次commit后立即update,已保證我們最新代碼被上傳到版本庫(kù)的同時(shí),他人的最新代碼能夠被及時(shí)更新到本地

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

          C:
          \>svn info E:\Temp\ECoupon
          Path: E:
          \Temp\ECoupon
          URL: http:
          //localhost:8000/svn/Workspace/Ericsson/ECoupon
          Repository Root: http:
          //localhost:8000/svn/Workspace
          Repository UUID: 06f3a259
          -b3b5-ff4e-9a70-52e8834f1976
          Revision: 
          6


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

          常用鏈接

          留言簿(21)

          隨筆分類

          隨筆檔案

          BlogJava熱點(diǎn)博客

          好友博客

          搜索

          •  

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 安新县| 鄂伦春自治旗| 邯郸市| 元朗区| 鄂托克前旗| 邳州市| 大连市| 康平县| 大渡口区| 大港区| 铜山县| 清流县| 徐汇区| 中阳县| 本溪市| 方正县| 乐亭县| 牟定县| 南澳县| 安福县| 泽州县| 凤山县| 睢宁县| 彝良县| 电白县| 梅河口市| 观塘区| 大足县| 视频| 谷城县| 军事| 明光市| 商南县| 陈巴尔虎旗| 比如县| 武乡县| 辽源市| 建平县| 吉林省| 龙江县| 新绛县|