wiki:waue/2010/0518

svn 上傳 nutchez v2

  • 要上傳的專案資料夾為 /home/myproject/nutchez-0.2
    • 此資料夾用來上傳到svn 資料庫內,因此即使執行完import 後,裡面依然沒有 .svn 資料夾
  • 要用svn 管控的資料夾在 /opt/svn_project/nutchez-0.2
    • nutchez-0.2 資料夾 給 svn co 來建立,因此只要確定 /opt/svn_project/ 目錄存在,並且權限可讀寫即可
  1. 初始在svn 資料庫建立專案

(只有在svn 上建立專案的時候才需要run)

cd /home/myproject/
svn import ./nutchez-0.2 https://trac.nchc.org.tw/svn/cloud/nutchez-0.2

接著到http://trac.nchc.org.tw/cloud/browser 看是否增加了nutchez-0.2 資料夾

  1. 列出 svn 專案資料庫內有什麼資料夾
    svn ls https://trac.nchc.org.tw/svn/cloud/
    
    接著會問一大堆認證密碼什麼鬼的,密碼正確才可以列出檔案
  1. 下載專案
    cd /opt/svn_project/
    svn co https://trac.nchc.org.tw/svn/cloud/nutchez-0.2
    
  2. 更新專案
    cd nutchez-0.2
    svn update
    
  3. 加入檔案、資料夾的指令
    svn mkdir aaa
    svn add bbb.txt
    
  4. 專案內容上傳
    svn ci
    

市場上有一間名為歐奔的軟體公司,主要從事程式碼撰寫的工作,有一天,開始覺得團隊合作上有些問題,在版本控制上,容易做許多白工,因此專案經理史托 曼(小史)決定將現有的專案交由 SVN 版本控制來做,看了手冊後,將原本未在版本控制下的程式法,利用 svn import 的方式匯入版本庫(repository)內。

svn import file:///tmp/repos/test team_project

接下來將工作分配給予兩位工程師李納斯(小李)與畢斯迪(小畢),兩位工程師分別先利用 svn checkout 下載程式碼後,開始進行小史交代的修改。

svn checkout file:///tmp/repos/test team_project

小史交派小李的工作是撰寫一個math模組,於是小李新增一個了一個 math 目錄,放了 math.h 與 math.cpp,寫了交代的運算函式後,利用 svn add,將整個 math 目錄加入預計提交的清單中。

svn add math

告一段落後,利用 svn commit 進行提交的動作。

svn commit

同時間小畢在看完程式碼後,也要開始進行原專案 bug 修改工作,並將小李的 math 函式納入新版程式使用,於是利用 svn update 先將最新的程式碼更新到 電腦中。

svn update file:///tmp/repos/test team_project

程式碼修改告一段落後,也利用 svn commit 進行提交的動作。 svn commit

好不容易,已完成進度的一半了,不過此時遇到了一些小麻煩,小李程式改一段落後,程式無法正常編譯了,但是上一版是可以的,因此小李利用 svn diff 終於找出程式錯誤的地方,原來是手滑多按了一個字母呀!改掉之後就回覆正常了。 svn diff

經歷了長時間的修改,商品終於要完整開放出來了,於是利用 svn export,輸出一份不帶有版本控制相關檔案資訊的程式碼,進行釋出的動作。

svn export file:///tmp/repos/test release_project

Last modified 11 years ago Last modified on May 18, 2010, 6:42:36 PM