亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測試 > 開源軟件測試 > 開源配置管理工具 > SVN
關于Subversion系統
作者:網絡轉載 發布時間:[ 2013/2/21 14:31:54 ] 推薦標簽:

重新激活 Apache后,如果有人要訪問SVN服務器,系統會要求他輸入用戶名和密碼。 只有輸入Sally 或Harry的用戶名和相應的密碼,才可以對檔案庫進行修改和訪問

服務器以svnserve方式運行
默認下客戶可以以匿名方式通過svn://方式任意訪問檔案庫,為了限制其權限,比如只允許讀操作,可以通過修改檔案庫conf子目錄中的svnseve.conf文件來實現。
#vi /home/mysvn/conf/svnseve.conf
修改[general]字段下內容為:
anon-access = read
如果設為anon-access = none,則匿名用戶不可以通過svn://方式訪問檔案庫
為了實現用戶認證,我們一般采用svn+ssh://訪問機制。
首先在svnseve.conf文件設置anon-access = none禁止匿名用戶通過svn://方式訪問檔案庫,然后在其后加入
auth-access = write
auth-access 是限制有援權的使用者(使用svn+ssh:// 來登入) 的存取權限,我們設為是可以讀寫。
當用戶通過svn+ssh://訪問時,服務器會自動激活ssh認證機制,要求用戶輸入密碼,對于window用戶來說還需要安裝第三方軟件openssh,才可以采用這種機制
Hook scripts
掛勾 (hook) 是改動檔案庫時所觸發的程序, 比如當你提交更動前,會先觸發pre-commit,提交更動后,則會觸發post-commit,我們可以利用hook來實現一些自動控制。檔案庫的hook 子目錄中, 預設是放置各個檔案庫掛勾的模板:
post-commit.tmpl         
pre-revprop-change.tmpl
post-revprop-change.tmpl 
start-commit.tmpl
pre-commit.tmpl       
如果要使用這些hook,必須把它的后綴名.tmpl去掉,拷貝為
post-commit         
pre-revprop-change
post-revprop-change 
start-commit
pre-commit
這里主要介紹pre-commit和post-commit(事實上它們是在特定的情況下被觸發的普通的shell程序,至于shell的內容由用戶自己隨意編寫,但是要保證名稱不能改動)
pre-commit
本掛勾執行的時間為異動完成之后, 送交之前.檔案庫會傳遞兩個自變量給這個程序: 檔案庫的路徑, 以及準備送交的異動名稱. 如果程序傳回一個非零的結束值, 送交會被中止, 而異動會被刪除.

如何應用pre-commit我們不妨舉個例子:
假如有一個項目由Mail Team,Login Team和PHP Team三個Team共同通過SVN系統開發完成。當項目準備發布的時候,PM人員發現Mail功能方面存在一些 bug,需要Mail Team去修改,為了防止其它Team的人員修改系統,我們可以在任何改動檔案庫的企圖之前用pre-commit去檢查log message信息,(因為任何更動檔案庫的操作都必須提供log message信息,PM可以事先輿Mail Team約定好一個log message),如果輿pre-commit中設定的log message不相符,則不能提交更動。
pre-commit源程序如下:
#!/bin/sh
REPOS=""
TXN=""
SVNLOOK=/usr/local/bin/svnlook
$SVNLOOK log -t "$TXN" "$REPOS" |
  grep –w "bug1234" > /dev/null || exit 1
exit 0
本例中的log message為”bug1234”,任何人想要提交更動必須用 –m “bug1234”參數,采用-m “bug123”,-m “bug12345”都會提交失敗。
post-commit
本掛勾執行的時間是在異動送交, 新修訂版被建立之后. 大多數的人用這個掛勾來寄出關于本次送交的電子郵件, 或是建立檔案庫的備份. 檔案庫會傳遞兩個自變量給這個程序: 檔案庫的路徑, 以及新建立的修訂版號. 本程序的結束碼會被忽略.

Subversion 源碼樹的 tools/hook-script 目錄中包含了一個 commit-email.pl 命令,可以用來寄送包含描述指定送交的電子郵件. 這個郵件包含了更動路徑列表, 該送交所對應的記錄訊息, 使用者, 送交的日期,以及一個以 GNU diff 樣式表示的本次更動差異. 我們可以將這個程序輿post-commit這個hook搭配起來使用來實現檔案庫更動后自動mail給相關人員的功能。
post-commit源程序如下:
#!/bin/sh
REPOS=""
REV=""
commit-email.pl "$REPOS" "$REV" PM@yourdomain.com
##需要指明commit-email.pl的路徑

特殊性質

除了對你的目錄與檔案進行版本控制之外, Subversion 還提供了一個接口, 可用來新增, 修改, 以及移除已納入版本控制的目錄與檔案的版本控制描述資料. 我們稱這個描述資料為性質,在這里我主要介紹以下幾個比較重要的特殊性質
svn:mime-type
svn:mime-type 性質在 Subversion 中有很多作用. 除了作為儲存檔案的多用途網際網絡郵件延伸語法 (MIME) 分類之外, 這個性質的內容還會決定幾項 Subversion 的行為特征.
舉個例子, 如果 svn:mime-type 性質設為文字的 MIME 類別 , Subversion 會假設該檔的內容是二進制(也是人類看不懂的資料). Subversion 提供的功能中, 其中一項是在從服務器收到工作檔的更新中, 依文字內容與文字列進行合并. 但是對含有二進制資料的檔案, 根本沒有 “文字列” 的概念. 因此, Subversion 對這些檔案在更新時, 不會試著進行內文合并. 它改用另一種方式。
一般來說Subversion 在執行 svn import 與 svn add 子命令時, 會使用二進制偵測運算法的方式來協助使用者.但是如果 Subversion 猜錯了, 或是你希望將 svn:mime-type 設定成更為明確的值(可能是 image/png)你都可以移除或是手動編輯這個性質.
svn:ignore
svn:ignore 性質包含了檔案樣式的列表, Subversion 處理時會忽略. 它可以與執行時期設定的 global-ignores 選項一起工作, 以便在類似 svn status 的命令中過濾掉未納入版本控制的目錄與檔案.
我們知道新增的文件和目錄必須透過 svn add 命令, 才會被納入 Subversion 的管理. svn status 命令會將工作復本中未納入版控制目錄與檔案顯示出來.
$ svn status calc
M     calc/button.c
?      calc/calculator
?      calc/data.c
?      calc/debug_log
?      calc/debug_log.1

在這個范例中, 用?標注出來的文件是未納入版控制的檔案.如果你不想每次執行 svn status 時, 都看到這些檔案, 那幺svn:ignore 性質是解決方案。你可以透過 svn propedit svn:ignore calc 對 calc 目錄加上一些忽略樣式. 舉個例子,將以下的值作為 svn:ignore 性質的新內容:
calculator
debug_log*
加上這個性質后再執行你的 svn status 輸出便會不同:
$ svn status
M     calc
M     calc/button.c
?      calc/data.c
現在, 所有不想看到的東西都從輸出中消失了!

上一頁123下一頁
軟件測試工具 | 聯系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 亚洲综合影院 | 日本欧美国产精品 | 日韩在线观看一区二区不卡视频 | 久久国产精品1区2区3区网页 | 欧美在线一级精品 | 国外欧美一区另类中文字幕 | 欧美日韩网址 | 未成人禁止视频高清在线观看 | 天堂v亚洲国产v一区二区 | 玖玖视频精品 | 又黄又爽的视频免费看 | 欧美在线观看免费一区视频 | 男女男精品视频在线播放 | 污视频链接 | 亚洲精品第一页 | 欧美日韩一区二区三在线 | 欧美精品日韩一区二区三区 | 手机看片91精品一区 | 亚洲天堂国产精品 | 国产精品国产三级国产在线观看 | 免费一级欧美片在线观看 | 朝鲜free嫩白的18sex性 | 思99re久久这里只有精品首页 | 午夜爽爽性刺激一区二区视频 | 羞羞视频免费观看网站 | 欧美三级欧美一级 | 婷婷久久综合九色综合九七 | 成年人在线看片 | 久久久免费观看 | 精品亚洲综合久久中文字幕 | 日韩导航| 亚洲五月激情综合图片区 | 一级在线 | 欧洲 | 毛片黄色视频 | 欧美成人性色生活片免费在线观看 | 国产精品久久久久一区二区 | 91最新视频在线观看 | 国产精品一区二区在线观看 | 日韩在线视频网站 | 亚洲欧美不卡视频 | 免费一看一级毛片人 |