首頁  >  文章  >  開發工具  >  快看,虛擬機器跟宿主機之間竟然可以使用SVN

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

咔咔
咔咔原創
2020-06-24 15:46:052579瀏覽

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

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

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

  • ##本文實作環境
  • centos7.3

#所有運算都在虛擬機器

一、安裝svn

執行指令:快看,虛擬機器跟宿主機之間竟然可以使用SVNyum install subversion

執行###svn --version####查看版本號,偵測是否安裝成功### 建立版本庫公用目錄,在/var/下方建立一個svn的目錄###mkdir /var/svn######

當然這個可以自訂目錄,看個人習慣快看,虛擬機器跟宿主機之間竟然可以使用SVN 接著來到var/svn目錄下,建立一個版本庫

執行指令svnadmin create /var /svn/kaka,此時你的svn目錄下會存在一個blog的版本庫(其餘兩個檔案不用管,是後邊做svn管理多專案才會用到的)

快看,虛擬機器跟宿主機之間竟然可以使用SVN# 進入到kaka的版本庫var/svn/kaka/conf#可以看到三個檔案

auth:控制權限的檔案 passwd:控制密碼的檔案 svnserve.conf:為svn的設定資訊 快看,虛擬機器跟宿主機之間竟然可以使用SVN 修改svnserve.conf設定訊息,紅色圈的都改就行。 快看,虛擬機器跟宿主機之間竟然可以使用SVN 接下來設定密碼,開啟檔案passwd 快看,虛擬機器跟宿主機之間竟然可以使用SVN 快看,虛擬機器跟宿主機之間竟然可以使用SVN 設定權限,這裡就是角色後邊跟上使用者設定的使用者名稱快看,虛擬機器跟宿主機之間竟然可以使用SVN 然後將剛剛修改的passwdauthz檔案移到跟版本庫一個目錄下,執行指令mv passwd authz /var/svn 快看,虛擬機器跟宿主機之間竟然可以使用SVN 到這一步就完成了svn的安裝和配置,接下來說明宿主機器連接虛擬機器的svn

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

使用虛擬機器的一定要注意ip位址快看,虛擬機器跟宿主機之間竟然可以使用SVN 宿主機先得需要有svn客戶端,這個安裝就不說了,next到底就ok。

開啟svn服務,執行指令svnserve -d -r /var/svn/,並偵測是否開啟成功快看,虛擬機器跟宿主機之間竟然可以使用SVN 宿主機器開始連接,位址就是虛擬機器的ip位址,帳號密碼就是admin 123456 即可快看,虛擬機器跟宿主機之間竟然可以使用SVN 此時文件就已經克隆到本地了快看,虛擬機器跟宿主機之間竟然可以使用SVN 測試上傳文件也成功快看,虛擬機器跟宿主機之間竟然可以使用SVN 到這裡我們就svn在宿主機連接並且提交文件到svn就成功了。

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

由於是在虛擬機器喀喀沒有設定web目錄,直接就在/usr/local/nginx /html

/var/svn/kaka/hooks下的post-commit.tmpl改為post-commit 快看,虛擬機器跟宿主機之間竟然可以使用SVN 執行指令mv post-commit.tmpl post-commit並且權限給滿快看,虛擬機器跟宿主機之間竟然可以使用SVN 修改post-commit檔案裡邊的內容,但開啟檔案後就是一堆註釋,咔咔提示一個指令將這些全部刪掉

執行100 dd即可,就是刪除100行的意思快看,虛擬機器跟宿主機之間竟然可以使用SVN 並且添加一下內容

#!/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 ~

快看,虛擬機器跟宿主機之間竟然可以使用SVN 保存退出,我們在本地在提交一個新文件,新建456.txt檔案提交快看,虛擬機器跟宿主機之間竟然可以使用SVN 來到web目錄看有沒有檔案/usr/local/nginx/html

很明顯是沒有這個檔案的,別慌! 快看,虛擬機器跟宿主機之間竟然可以使用SVN/usr/local/nginx/html這個目錄下在操作最後一步

執行指令:svn co --username admin --password 123456 svn:/ /192.168.254.135/kaka,這時候我們宿主機的檔案就已經透過svn克隆到我們的​​虛擬機器了。 快看,虛擬機器跟宿主機之間竟然可以使用SVN 再到本地上傳一次,看是否可以直接到虛擬機器。

經過測試已經很ok了。 快看,虛擬機器跟宿主機之間竟然可以使用SVN

四、多專案使用svn

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

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

也就是多個版本庫使用同一個權限和帳號密碼快看,虛擬機器跟宿主機之間竟然可以使用SVN 同時給kaka和blog上傳一個258.txt 快看,虛擬機器跟宿主機之間竟然可以使用SVN 快看,虛擬機器跟宿主機之間竟然可以使用SVN 到這一步就把多項目使用同一個svn就搞定了。

五、使用者權限設定

為什麼需要設定這個使用者權限區分。

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

這個時候就需要進行使用者權限設定了。來整起

登入使用者new 快看,虛擬機器跟宿主機之間竟然可以使用SVN 這時候只有r權限  沒有w權限的new使用者是提交不了檔案的 快看,虛擬機器跟宿主機之間竟然可以使用SVN 快看,虛擬機器跟宿主機之間竟然可以使用SVN

以上是快看,虛擬機器跟宿主機之間竟然可以使用SVN的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn