利用SVN HOOKS指令碼同步伺服器

2022-04-17 07:21:12 字數 991 閱讀 7130

內部測試伺服器同時兼做svn伺服器,所以配置了svn hooks的post-commit指令碼,在團隊成員成功提交了檔案後,自動完成測試伺服器的更新。

步驟如下:

1. cd /svnroot/hooks

2. cp post-commit.tmpl post-commit

3. 將post-commit的內容修改為:

#!/bin/sh

svn=/usr/bin/svn

web=/var/web/

$svn up --username server --password 123456 $web

其中,/var/web為測試伺服器documentroot的位置,是用

svn checkout svn: /var/web

命令檢出的。

4. 修改post-commit的許可權

chmod 755 post-commit

重啟svn,在red had e5中,沒有成功,google一下,原來是編碼問題,新增一條export語句,檔案內容為:

#!/bin/sh

export lang = en_us.utf-8

svn=/usr/bin/svn

web=/var/web/

$svn up --username server --password 123456 $web

成功伺服器硬體公升級,改用ubuntu,所有步驟一仍其舊,失敗,百思不得其解。

增加一條語句:

whoami > /var/web/a.txt

發現是用root賬號執行的(之所以會這樣,可能因為我沒有把svn配置為apache模式,直接用svn://訪問)。檢出時用的是預設賬號下:

sudo svn checkout svn: /var/web

沒有root賬號的資訊被儲存。

su root

svn up /var/web

根據提示操作。

再提交檔案,檢視測試伺服器檔案版本,成功。

svn hooks利用鉤子指令碼

在建立的svn倉庫的專案裡,有hooks資料夾,其中有這樣乙個檔案 這裡已post commit為例 post commit.tmpl 這是乙個模板檔案,字面意思就是在svn提交的的時候執行相關的指令碼操作。cp post commit.tmpl post commit 複製模板檔案 不要忘記給po...

利用crtmpserver搭建rtmp伺服器

google 實踐 最終直播成功。記錄一下。架構為 ffmpeg crtmpserver flash 進一步拆分 flv muxer librtmp crtmpserver flash 進入正題 編譯crtmpserver 過程曲折。請參考 1.源 根資料夾的readme。2.google。3.我遇...

利用docker除錯OpenStack服務

從工作開始就一直做openstack的開發,期間經歷了做私有雲的開發,到現在在做公有雲網路控制器的開發。開發除錯的時候,最讓我頭疼的是不是除錯 和找bug。而是將自己改動的openstack部署到測試環境進行測試,哪怕是乙個簡單的業務邏輯修改。基本上60 以上的時間都花在了部署環境上。由於後面要開發...