SVN版本控制

1.下載SVN服務器和客戶端版本控制軟件
2.subversion爲服務器端,tortoiseSVN爲客戶端軟件
3.安裝完重啓電腦
4.桌面右鍵,看到有SVN checkout和tortoiseSVN選項則表示安裝成功
5.新建一個空目錄,e:/server
6.進入server目錄,右鍵單擊tortoiseSVN--create repository here(建立版本庫),彈出一個警告框:the repository was successfully created並創建了conf,db,hooks,locks文件夾 表示成功
7.conf文件夾裏有3個文件
    authz:版本權限文件
    passwd:和用戶相關的文件
            格式爲:用戶名=密碼 的形式
    svnserve.conf:svn的主配置文件
        打開svnserve.conf文件
        12行 anon-access = read 是對匿名用戶的權限配置 默認是匿名用戶有讀的權利
        20行 password-db = passwd 這行須要修改
        表示 打開一個接口,容許客戶以用戶名和密碼的形式進行訪問
        將#去掉使配置生效,保存,配置生效
8.開啓服務
    打開命令行,輸入
    svnserve.exe -d -r 版本庫目錄地址
    例如 svnserve.exe -d -r e:/SVNserver
    這樣這個服務器就能夠對外進行訪問了
    注意 doc界面不能關,不然服務將會中止
    模擬遠程訪問一下
        1.上傳:
        在F盤新建一個目錄SVNuser1
        進入目錄
        右鍵tortoiseSVN--repo-browser瀏覽
        彈出一個對話框 輸入 svn://127.0.0.1 點擊ok
        彈出右一個對話框 點擊ok
        右鍵SVN Checkout 點擊ok
        copy幾個文件到目錄
        右鍵文件 tortoiseSVN--add添加
        圖標由?變成 + 
        右鍵 SVN Commit 上傳
        彈出一個對話框,能夠輸入描述信息 點擊ok
        彈出一個對話框 輸入用戶名和密碼 ok
        ok
        文件會變成√表示上傳服務器成功
        編輯上傳過文件,會變成!圖標
        加鎖 右鍵tortoiseSVN--Get lock 
        輸入用戶名密碼 ok 加鎖成功
        解鎖 右鍵tortoiseSVN--Release lock
        輸入用戶名密碼 ok 解鎖成功


        2.下載:
        新建一個目錄 F:/SVNuser2
        進入目錄
        右鍵tortoiseSVN--repo-browser
        彈出對話框 選擇URL ok
        能夠看到文件列表 表示連接正常
        右鍵 SVN Checkout 檢出-第一次下載
        點擊ok 就能夠看到上傳到服務器的文件
        user2中添加文件user2test.php
        右鍵tortoiseSVN--add
        右鍵SVN Commit
        進入user1目錄
        右鍵SVN Checkout 變成了 SVN Update 表示更新


        3.刪除
        刪除user1中test.php文件
        右鍵SVN Commit
        選中刪除的文件 ok輸入用戶名密碼 ok 刪除
        user2文件夾中
        SVN Update test.php文件也刪除成功


        4.歷史版本找回
        右鍵tortoiseSVN--update to revision
        彈出對話框
        選擇Revision單選框 輸入版本號 ok


        5.文件差別
        user1新建了一個index.html文件,提交到服務器
        user2在user1的基礎上進行修改,並提交到服務器
        右鍵tortoiseSVN--Diff with previous version
        能夠看到以前版本與當前版本之間的差別


        6.衝突
        user2修改index.html 增長了一句<div>dddddd</div>
        user1修改index.html 增長了一句<div>eeeeee</div>
        user1先進行提交
        user2以後提交,則會提示失敗,須要首先更新服務器內容到本地,再從新修改上傳
        這時候更新到本地會產生一個衝突 文件會有一個!標示
        右鍵tortoiseSVN--edit conflicts 編輯衝突
        手動解決衝突
        能夠在左側服務器版本點擊右鍵 選擇 use this whole file
        也能夠選擇單行右鍵 use this text block解決衝突
        也能夠在右側本身的版本中點擊右鍵相應做出選擇
        保存
        右鍵tortoiseSVN--Resolved
        右鍵SVN Commit


        7.取消記住用戶名
        若本地記住了SVN的用戶名和密碼,當須要使用別的帳號時,沒法更改帳號,使用如下方法能夠切換帳號:
        打開C:\Documents and Settings\用戶名(管理員是Administrator)\Application Data\Subversion\auth,
        刪除該文件,而後從新更新即會彈出輸入用戶名密碼的界面,輸入用戶名密碼搞定


        服務器端
        1.將服務加到自啓動中
            sc create svnserve binpath= "d:\Subversion\bin\svnserve.exe --service --root e:\SVNserver" 
            binpath=後邊必定要加空格 而後裏面內容爲安裝路徑 --service --root 版本庫路徑
            個人電腦--管理--服務裏會有一行 svnserve 能夠手動啓動服務
            能夠對它進行配置 單擊右鍵--屬性--自動啓動
        2.權限管理
        默認匿名用戶是能夠訪問服務器上的文件的並進行下載的,這樣不利於安全
        打開e:/SVNserve/conf/svnserve.conf
        12 行 # anon-access = read 改爲
        anon-access = none 
        權限配置
        打開e:/SVNserver/conf/auth文件
        在[groups]中增長
        admin = lampbrother0 =兩邊要有空格
        對目錄進行配置
        [/]
        @admin = rw 組的可讀可寫權限         lampbrother1 = rw 用戶的可讀可寫權限         * = r 其餘用戶可讀權限         打開e:/SVNserver/conf/svnserve.conf         27 行 # authz-db = authz 默認爲不用任何的權限配置         打開註釋 改爲 authz-db = authz 找到zuthz相關配置進行權限配置         常見圖標         √ 表示狀態是正常的,如今的版本跟服務器上的版本是一摸同樣的         !表示文件同步過服務器後進行過修改,尚未上傳到服務器         ?表示新建的文件,服務器還不認識         + 已經添加到管理名單,尚未上傳到服務器         鎖表示文件加鎖
相關文章
相關標籤/搜索