摘要:個(gè)人博客安裝實(shí)現(xiàn)自動(dòng)同步到目錄一安裝檢查服務(wù)器是否安裝已安裝未安裝未安裝使用安裝創(chuàng)建倉(cāng)庫(kù)目錄倉(cāng)庫(kù)目錄可更改到其他目錄看你意愿創(chuàng)建項(xiàng)目版本庫(kù)為版本庫(kù)名稱創(chuàng)建成功后進(jìn)入版本庫(kù)目錄查看目錄下生成的文件存放版本庫(kù)所用配置文件的
個(gè)人博客:
Linux安裝SVN實(shí)現(xiàn)自動(dòng)同步到Web目錄
一:安裝SVN
1,檢查服務(wù)器是否安裝SVN
svn --version 已安裝: svn, version 1.6.11 (r934486) compiled Aug 17 2015, 08:37:43 Copyright (C) 2000-2009 CollabNet. Subversion is open source software, see http://subversion.tigris.org/ This product includes software developed by CollabNet (http://www.Collab.Net/). The following repository access (RA) modules are available: * ra_neon : Module for accessing a repository via WebDAV protocol using Neon. - handles "http" scheme - handles "https" scheme * ra_svn : Module for accessing a repository using the svn network protocol. - with Cyrus SASL authentication - handles "svn" scheme * ra_local : Module for accessing a repository on local disk. - handles "file" scheme 未安裝: -bash: svn: command not found
2,未安裝使用yum安裝
yum install subversion
3,創(chuàng)建倉(cāng)庫(kù)目錄(倉(cāng)庫(kù)目錄可更改到其他目錄,看你意愿)
mkdir –p /svn
4,創(chuàng)建項(xiàng)目版本庫(kù)
svnadmin create /svn/davesvn --davesvn為版本庫(kù)名稱
5,創(chuàng)建成功后進(jìn)入版本庫(kù)目錄
cd /svn/davesvn ls 查看目錄下生成的文件 conf 存放版本庫(kù)所用配置文件的目錄 db 版本數(shù)據(jù)存儲(chǔ)目錄 format 存儲(chǔ)一個(gè)整數(shù)的文件,此整數(shù)代表庫(kù)層次結(jié)構(gòu)版本 hooks 存放版本庫(kù)勾子目錄 locks 存儲(chǔ)庫(kù)鎖目錄,用來(lái)跟蹤庫(kù)的訪問(wèn)者 README.txt
6,接下來(lái)開始配置SVN
cd conf ls authz | 權(quán)限配置文件 passwd | 用戶名口令文件 svnserve.conf | svn服務(wù)配置文件 //配置密碼 XXX=XXX vim password [users] zhan = 123456 //配置權(quán)限 XXX=XXX vim authz [/] zhan = rw //配置svnserve.conf 取消以下注釋 注意不要有空格 vim svnserve.conf anon-access = read #匿名用戶可讀 auth-access = write #授權(quán)用戶可寫 password-db = passwd #使用哪個(gè)文件作為賬號(hào)文件 authz-db = authz #使用哪個(gè)文件作為權(quán)限文件 realm = /svn/davesvn #認(rèn)證空間名,版本庫(kù)所在目錄
7,啟動(dòng)SVN服務(wù)
svnserve -d -r /svn/davesvn -d 表示后臺(tái)運(yùn)行 -r 指定目錄是 /svn/davesvn 若提示:svnserve: Can"t bind server socket: Address already in use 表示服務(wù)已經(jīng)啟動(dòng),先停止服務(wù) ps -ef | grep svn kill -9 [進(jìn)程號(hào)] 殺掉進(jìn)程
二,實(shí)現(xiàn)自動(dòng)部署項(xiàng)目
1,使用post-commit實(shí)現(xiàn)自動(dòng)部署
在/svn/davesvn/hooks下創(chuàng)建post-commit文件,文件設(shè)置可執(zhí)行權(quán)限 cp post-commit.tmpl post-commit chmod 755 post-commit
2,打開post-commit文件,清空post-commit內(nèi)容,加入以下內(nèi)容
!/bin/sh export LANG=zh_CN.UTF-8 svn co svn://[你的ip地址]/davesvn [WEB實(shí)際目錄](méi) LOG_PATH=/tmp/svn_test.log WEB=[WEB實(shí)際目錄](méi) REPOS="$1" REV="$2" svn update --username [剛設(shè)置的SVN用戶名] --password [剛設(shè)置的SVN密碼] $WEB --no-auth-cache >> $LOG_PATH
3,最后回到shell
svn co svn://你的ip/davesvn [WEB目錄](méi) 按照提示輸入賬號(hào)密碼實(shí)現(xiàn)自動(dòng)同步
三,使用
SVN檢出:查看是否可以正常檢出 svn://服務(wù)器IP:3690/davesvn 正常檢出后提交查看WEB目錄是否實(shí)現(xiàn)同步內(nèi)容
排坑:
svn錯(cuò)誤:post-commit hook failed (exit code 1) with output. 1,檢查post-commit里面設(shè)置的字符編碼是否正確 原來(lái)是#export LANG=zh_CN.GBK 修改為export LANG=en_US.UTF-8即可(svn服務(wù)器默認(rèn)是utf8) 2,檢查post-commit里面設(shè)置的賬號(hào)密碼和SVN配置里面的賬號(hào)密碼是否正確 3,255錯(cuò)誤:post-commit有沒(méi)有給執(zhí)行權(quán)限 4,查看服務(wù)器3690端口是否開啟 4,最后無(wú)論在做什么,最主要的還是細(xì)致,看報(bào)錯(cuò)信息,不要慌張
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/30886.html
摘要:后自動(dòng)同步到網(wǎng)站根目錄的方法為什么需要同步呢原因是我們的文件其實(shí)是提交到了的倉(cāng)庫(kù)中,倉(cāng)庫(kù)不是一個(gè)實(shí)際的網(wǎng)站根目錄。進(jìn)入到項(xiàng)目下的文件夾把的擴(kuò)展名去掉,并賦予權(quán)限。你的至此已經(jīng)配置完畢,并且可以實(shí)現(xiàn)本地一執(zhí)行上傳,自動(dòng)同步到網(wǎng)站跟目錄。 前言 筆者服務(wù)器環(huán)境、目錄情況: 系統(tǒng):CentOS 6.5 網(wǎng)站根目錄:/home/wwwroot/test/web 為什么要用svn? a.方便多人...
閱讀 3291·2021-11-23 09:51
閱讀 1681·2021-11-22 09:34
閱讀 2946·2021-10-27 14:15
閱讀 2477·2021-10-12 10:17
閱讀 2034·2021-10-12 10:12
閱讀 1057·2021-09-27 14:00
閱讀 2097·2021-09-22 15:19
閱讀 1150·2019-08-30 10:51