準備兩臺機器:192.168.2.115 -- 服務端
192.168.2.116 -- 客戶端git
[root@root-01 ~]# yum install -y subversion
建立版本庫的目錄: [root@root-01 ~]# mkdir -p /data/svnroot/myproject 初始化: [root@root-01 ~]# svnadmin create /data/svnroot/myproject 初始化後會生成配置文件等: [root@root-01 ~]# ls -la /data/svnroot/myproject 總用量 8 drwxr-xr-x 6 root root 86 10月 23 11:38 . drwxr-xr-x 3 root root 23 10月 23 11:34 .. drwxr-xr-x 2 root root 54 10月 23 11:38 conf drwxr-sr-x 6 root root 233 10月 23 11:38 db -r--r--r-- 1 root root 2 10月 23 11:38 format drwxr-xr-x 2 root root 231 10月 23 11:38 hooks drwxr-xr-x 2 root root 41 10月 23 11:38 locks -rw-r--r-- 1 root root 229 10月 23 11:38 README.txt 配置文件目錄: [root@root-01 ~]# cd /data/svnroot/myproject/conf/ [root@root-01 conf]# ls authz passwd svnserve.conf 說明:authz 文件是用來控制權限的 passwd 文件是用來定義密碼的 svnserve.conf 是倉庫的配置文件
vim authz 在[groups]下面添加: Anna = user1,user2 Anna是用戶組,用戶組包含了兩個用戶(user1和user2) [/] 方括號裏面的根指的是這個目錄:/data/svnroot/myproject/conf/ @Anna = rw Anna用戶組可讀可寫 * = r 除了Anna用戶組,其餘的可讀 另外一種方式: [myproject:/] [myproject:/] 這表示一個項目,這種方式用在svnroot目錄下有多個項目,也就是指定某個項目 user1 = rw
[root@root-01 conf]# vim passwd [users] # harry = harryssecret # sally = sallyssecret 添加用戶名和密碼: Anna = 123456 user1 = 586898 user2 = 586898 注:前面是用戶名,後面是密碼
vim svnserve.conf 在[general]下面添加: anon-access = none anon--匿名用戶 沒有任何權限 auth-access = write auth--被受權的用戶 可寫 password-db = passwd 指定用戶密碼的文件是passwd authz-db = authz 指定用戶權限的文件是authz realm = /data/svnroot/myproject 表示對應哪一個項目生效
啓動: [root@root-01 conf]# svnserve -d -r /data/svnroot/ 查看進程: [root@root-01 conf]# ps aux |grep svn root 3877 0.0 0.0 162188 656 ? Ss 13:48 0:00 svnserve -d -r /data/svnroot/ root 3882 0.0 0.0 112664 968 pts/0 S+ 13:57 0:00 grep --color=auto svn 查看監聽端口3690: [root@root-01 conf]# netstat -nlpt |grep svn tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 3877/svnserve
說明:客戶端下載subversion就可使用svn命令web
[root@root-02 ~]# yum install -y subversion
檢索: [root@root-02 ~]# cd /home [root@root-02 svn]# svn checkout svn://192.168.2.115/myproject --username=user1 認證領域: <svn://192.168.2.115:3690> /data/svnroot/myproject 「user1」的密碼: ----------------------------------------------------------------------- 注意! 你的密碼,對於認證域: <svn://192.168.2.115:3690> /data/svnroot/myproject 只能明文保存在磁盤上! 若是可能的話,請考慮配置你的系統,讓 Subversion 能夠保存加密後的密碼。請參閱文檔以得到詳細信息。 你能夠經過在「/root/.subversion/servers」中設置選項「store-plaintext-passwords」爲「yes」或「no」, 來避免再次出現此警告。 ----------------------------------------------------------------------- 保存未加密的密碼(yes/no)?yes 取出版本 0。 [root@root-02 home]# ls myproject
說明:是在客戶端操做vim
[root@root-02 ~]# cd /home/myproject 拷貝文件: [root@root-02 myproject]# cp /etc/favicon.png . 增長: [root@root-02 myproject]# svn add ./favicon.png A (bin) favicon.png 上傳到服務端: [root@root-02 myproject]# svn commit -m "add favicon.png" 正在增長 (二進制) favicon.png 傳輸文件數據. 提交後的版本爲 2。
服務端本地是沒法顯示剛客戶端上傳的文件: [root@root-01 ~]# cd /home/svntest/myproject [root@root-01 myproject]# ls 升級能夠看到客戶端上傳的文件: [root@root-01 myproject]# svn up 正在升級 '.': A favicon.png 更新到版本 2。 [root@root-01 myproject]# ls favicon.png
svn官網:https://tortoisesvn.net/windows
點擊DE EN ZH --> 點擊下載 --> 根據系統下載32位或64位bash
點擊右鍵,看看有沒有紅色框框內的兩個圖標,若沒有的話,重啓電腦服務器
說明: 紅色框框內的IP地址和目錄須要填寫 --->點擊oktcp
填寫用戶名和密碼 -->點擊ok分佈式
checkout後,myproject目錄就有兩個文件svn
建立1.txt --> 點擊右鍵Tortoise SVN -->點擊Add -->點擊SVNcommit -->會彈出一個對話框,要填寫add 1.txt -->點擊ok --> 再點擊ok網站
查看服務端,升級後就有1.txt
[root@root-01 ~] cd /home/svntest/myproject 升級: [root@root-01 myproject]# svn up 正在升級 '.': A 1.txt 更新到版本 5。 [root@root-01 myproject]# ls 123.txt 1.txt favicon.png fstab test.txt
[root@root-01 myproject]# vim 11.txt [root@root-01 myproject]# svn add 11.txt A 11.txt [root@root-01 myproject]# svn commit -m "add 11.txt" 正在增長 11.txt 傳輸文件數據. 提交後的版本爲 6。