快看,虛擬機跟宿主機之間竟然可以使用SVN

作爲程序員的我們,還是應該多做做嘗試的。在寫rabbitmq時由於在虛擬機操作,截圖不好截,爲了給大家呈現更好的效果,所以就給大家寫一份宿主機跟虛擬機之間使用svn的操作流程。

本文主要圍繞如下幾個方面

  • 安裝svn
  • 在宿主機連接虛擬機的svn
  • 使用鉤子同步到web目錄
  • 多項目使用svn
  • svn用戶權限設置

本文實現環境

  • centos7.3
  • 所有操作均在虛擬機

一、安裝svn

執行命令:yum install subversion

執行svn --version查看版本號,檢測是否安裝成功
在這裏插入圖片描述
創建版本庫公共目錄,在/var/下創建一個svn的目錄mkdir /var/svn

當然這個可以自定義目錄,看個人習慣
在這裏插入圖片描述
接着來到var/svn目錄下,創建一個版本庫

執行命令svnadmin create /var/svn/kaka,此時你的svn目錄下會存在一個blog的版本庫(其餘倆個文件不用管,是後邊做svn管理多項目纔會用到的)

在這裏插入圖片描述
進入到kaka的版本庫var/svn/kaka/conf可以看到三個文件

auth:控制權限的文件
passwd:控制密碼的文件
svnserve.conf:爲svn的配置信息
在這裏插入圖片描述
修改svnserve.conf配置信息,紅色圈的都改就行。
在這裏插入圖片描述
接下來設置密碼,打開文件passwd
在這裏插入圖片描述
在這裏插入圖片描述
設置權限,這裏就是角色後邊跟上用戶設置的用戶名
在這裏插入圖片描述
然後將剛剛修改的passwdauthz文件移到跟版本庫一個目錄下,執行命令mv passwd authz /var/svn
在這裏插入圖片描述
到這一步就完成了svn的安裝和配置,接下來說明宿主機連接虛擬機的svn

二、宿主機連接虛擬機的svn

使用虛擬機的一定要注意ip地址
在這裏插入圖片描述
宿主機先得需要有svn客戶端,這個安裝就不說了,next到底就ok。

開啓svn服務,執行命令svnserve -d -r /var/svn/,並檢測是否開啓成功
在這裏插入圖片描述
宿主機開始連接,地址就是虛擬機的ip地址,賬號密碼就是admin 123456 即可
在這裏插入圖片描述
此時文件就已經克隆到本地了
在這裏插入圖片描述
測試上傳文件也成功
在這裏插入圖片描述
到這裏我們就svn在宿主機連接並且提交文件到svn就成功了。

三、實現自動同步到web環境

由於是在虛擬機咔咔沒有配置web目錄,直接就在/usr/local/nginx/html

/var/svn/kaka/hooks下的post-commit.tmpl改爲post-commit
在這裏插入圖片描述
執行指令mv post-commit.tmpl post-commit並且權限給滿
在這裏插入圖片描述
修改post-commit文件裏邊的內容,但是打開文件後就是一堆註釋,咔咔提示一個指令將這些全部刪掉

執行100 dd即可,就是刪除100行的意思
在這裏插入圖片描述
並且添加一下內容

#!/bin/sh
#設定環境變量,如果沒有設定可能會出現update報錯
 
export LANG='zh_CN.UTF-8' 
 
SVN_PATH=/usr/bin/svn
WEB_PATH=/usr/local/nginx/html/kaka/
 
LOG_PATH=/tmp/svn_update.log
$SVN_PATH update $WEB_PATH
~                          

在這裏插入圖片描述
保存退出,我們在本地在提交一個新文件,新建456.txt文件提交
在這裏插入圖片描述
來到web目錄看有沒有文件/usr/local/nginx/html

很是明顯是沒有這個文件的,別慌!
在這裏插入圖片描述
/usr/local/nginx/html這個目錄下在操作最後一步

執行指令:svn co --username admin --password 123456 svn://192.168.254.135/kaka,這個時候我們宿主機的文件就已經通過svn克隆到我們的虛擬機了。
在這裏插入圖片描述
再到本地上傳一次,看是否可以直接到虛擬機裏。

經過測試已經很ok了。
在這裏插入圖片描述

四、多項目使用svn

其實在上邊的截圖裏都看到了我的版本庫裏存在一個blog的版本。

操作步驟跟kaka的版本庫是一模一樣的。只不過直接把blog/conf下的passwdauthz的文件直接刪掉即可

也就是多個版本庫使用同一個權限和賬號密碼
在這裏插入圖片描述
同時給kaka和blog上傳一個258.txt
在這裏插入圖片描述
在這裏插入圖片描述
到這一步就把多項目使用同一個svn就搞定了。

五、用戶權限設置

爲什麼需要設置這個用戶權限區分。

例如你傳代碼到了svn,這時公司來了個新同事,他需要熟悉代碼,但是他只可拉取代碼不能提交代碼。

這個時候就需要進行用戶權限設置了。來整起

登錄用戶new
在這裏插入圖片描述
這個時候只有r權限 沒有w權限的new用戶是提交不了文件的
在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章