軟體工程版本控制領域, SVN已經逐步替代CVS, 今天配置SVN因為一些細節記不太清, 所以baidu了一下, 發現許多人所說的配置過程存在疏漏或錯誤, 因此我很羅嗦的記錄了一下——絕對夠羅嗦, 為的就是哪怕你從來沒用過類似軟體, 也能做到一次配置成功.(雪人注: 這裡只考慮常見的區域網路內使用, 因此沒有使用SSH等.)SVN相關軟體下載:
1. svn的Win32版本: http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=912.
2. svnservice
3. TortoiseSVN及簡體中文語言安裝包: http://tortoisesvn.tigris.org/download.html搭建SVN伺服器端:
1. 解壓縮svn到一個目錄, 例如c:/svn
2. 解壓縮svnservice的壓縮包, 將svnservice.exe放入c:/svn/bin
3. 安裝TortoiseSVN, 安裝完畢時會提示重新啟動電腦, 重啟完畢後安裝簡體中文語言套件, 然後在隨便一個目錄右擊, 就會發現多出了一些SVN相關菜單, 選擇其中的TortoiseSVN, 再選擇子功能表”Settings”, 設定Language為”中文(簡體)”
4. 開啟”我的電腦”, 建立一個存放svn資訊的目錄, 例如c:/svnhome, 然後返回在c盤, 右擊這個svnhome目錄, 在出現的菜單中選擇TortoiseSVN, 再選擇子功能表”在此建立檔案庫”, 選擇fsfs方式即可 (雪人注: 這裡選擇建立檔案庫實際上就相當於讓TortoiseSVN代替你進行了svnadmin create c:/svnhome的操作)
5. 在dos控制台狀態下cd c:/svn/bin 然後svnservice -install -d -r c:/svnhome 再net start svnservice來將其作為服務運行, 建議你再到控制台-管理工具-服務中找到SVNService, 右擊選擇”屬性”, 再將其啟動類型設定為”自動”
6. 開啟c:/svnhome, 你會發現已經多了一些目錄和檔案, 開啟conf子目錄, 開啟svnserve.conf檔案, 這裡行前凡是有#的都等於是被注釋忽略了, 你可以把#去掉讓那一行生效, 或者自己新添加行. 裡面的英文注釋已經詳細說明了各種設定的含義, 最後你設定[general]小節中行前沒有#號的內容為:
anon-access = none
auth-access = write
password-db = passwd
含義是:
未驗證使用者無任何許可權 (如果把none修改為read就是給予讀許可權)
已驗證使用者給予寫入權限 (當然也能讀)
密碼資料存放到passwd檔案中
然後開啟同目錄的passwd檔案來設定帳戶:
同樣, 設定[users]小節中行前沒有#號的內容, 例如:
snowman=abc123
含義是:
使用者snowman的密碼為abc123
6. 開啟”我的電腦”, 在你需要進資料列版本設定的目錄上右擊, 選擇TortoiseSVN, 再選擇子功能表”匯入…”, 設定”檔案庫url”為svn://localhost 點確定後就會提示檔案正在匯入. (雪人注: 這裡是svn檔案庫與svn服務是同一台電腦的情況, 所以可用localhost, 其它機器如果要訪問svn服務, 應該用svn://svn伺服器的IP地址, 例如svn://10.0.0.52)
至此, SVN伺服器配置完成
用戶端配置:
1. 沒安裝TortoiseSVN的電腦先安裝它並重啟電腦. (雪人注: 具體步驟參照前面搭建伺服器端的第3步)
2. 建立一個準備用來存放版本控制工程的目錄, 例如d:/project, 然後在”我的電腦”中右擊這個目錄, 選擇”SVN取出…”, 設定”檔案庫url”為svn://svn伺服器的IP地址, 接下來會問你使用者名稱和帳號, 你就填寫前面搭建伺服器端所設定的使用者snowman密碼abc123
(檔案庫url可參照前面搭建伺服器端第6步的註解)
點確定後就會提示檔案正在取出到d:/project
至此, SVN用戶端配置完成, 你會看到d:/project及其下面的檔案都被標記了綠色對勾
用戶端的簡單日常使用:
1. 要取得工程的當前的最新版本, 右擊d:/project, 選擇”SVN更新”
2. 你更改工程後, 要將你的修改更新到SVN, 右擊d:/project, 選擇”SVN提交” (謹慎的話請先更新到SVN最新版本後再提交)
其實就是將 svnservice 檔案拷貝到你已經裝好的TortoiseSVN目錄下,然後運行上述的那些命令後(svnservice -install -d -r c:/svnhome),去控制台-〉管理工具-〉服務,既可以看到svn的服務了,啟動即可