顯示具有 subversion 標籤的文章。 顯示所有文章
顯示具有 subversion 標籤的文章。 顯示所有文章

星期四, 5月 22, 2008

如何自 svn 檔案庫中取出某一檔案?

svn export URL

不小心砍掉 .svn 這個目錄怎麼辦?

.svn 這個目錄是 svn 替你做的本地工作記錄
沒有這個目錄,svn 就不知道你做過了什麼事或是不知道怎麼幫你做記錄了。因為不知從何做起 Orz...

不小心砍掉 .svn 這個目錄怎麼辦?

把該層整個砍掉,再到上一層去做 svn update 即可從 server 端將整個有缺的部份更新回來了。


svn 分支用法

當想要
*. 做一些實驗
*. 新增某功能
*. 修改某部份功能

建議這樣做
1. 從主幹分支出去
2. 從分支取出
3. 開始在分支的複本做你想要的修改
4. 分支目的達成,將修改部份合併回主幹


1. 從主幹分支出去
svn cp svn+ssh://trunk svn+ssh://branches/BRANCHES_PURPOSE


上面執行後,會將目前 trunk 最新的版本複製一份到 branches/BRANCHES_PURPOSE
BRANCHES_PURPOSE 是你為這個分支所取的名字,建議可取這個分支所要完成的功能相關的名字

2. 從分支取出
svn co svn+ssh://branches/BRANCHES_PURPOSE WORK_DIR


執行後,會將 BRANCHES_PURPOSE 複製一份到 WORK_DIRWORK_DIR svn 會幫你產生

3. 開始在分支的複本做你想要的修改
修改/新增/刪除
更新
提交
驗證

4. 分支目的達成,將修改部份合併回主幹
cd WORK_DIR
svn merge svn+ssh://trunk svn+ssh://branches/BRANCHES_PURPOSE

星期六, 6月 02, 2007

如何安裝 subversion 於 debian

安裝 subversion
# apt-get install subversion subversion-tools


設定使用權限
假設 project name 為 project_a , 該 project 的使用成員有 user_a, user_b, user_c
則系統應有帳號 user_a, user_b, user_c ; 群組 group_a
並將 user_a, user_b, user_c 加入 group_a,
/etc/group 應如下
group_a:x:1000:user_a,user_b,user_c


假設檔案庫(repository)欲建於 /home/project_a
則以 svnadmin 將之初始化為 repository
# svnadmin create /home/project_a


設定檔案庫的檔案存取權限
# chown -R user_a.group_a /home/project_a
# chmod 770 /home/project_a
# chmod -R g+w /home/project_a


設定檔案庫的存取權限,僅經身份驗證通過者可寫入
修改 /home/project_a/conf/svnserve.conf
[general]
anon-access = none
auth-access = write


使用如下 URL 即可存取檔案庫 project_a
svn+ssh://user@svn.server.ip/home/project_a

ps.身份驗證是以 ssh 完成,若欲免密碼即通過身份驗證,請參考Login via SSH without password