« サーバー上のGitでWEBコンテンツリリース | メイン | PHP で HTML をスクレイピング »

Git

フックでプル&バックアップを自動化

 前回の構成「サーバー上のGitでWEBコンテンツリリース」で、(A/4)へのリリースや(B/3)へのバックアップを手動から自動にするには。
(A)で
$ sudo vi /opt/git/◆◆◆.git/hooks/post-receive
(B)からの push で、自動で(A)の★★★へリリース(pull)する場合
#!/bin/sh
git --git-dir=★★★/.git pull origin master
ただし、push 出来る人には制限が必要。
(A)のベアリポジトリ(1)/opt/git/◆◆◆.git への更新タイミングで(B/3)を自動更新(バックアップ)にする場合
#!/bin/sh
git --git-dir=/opt/git/◆◆◆.git push --mirror USER@HOST:/opt/git/◆◆◆.git
のように post-receive を作成し、実行権限をつけて完成。
$ sudo chown admin:wheel /opt/git/◆◆◆.git/hooks/post-receive
$ sudo chmod +x /opt/git/◆◆◆.git/hooks/post-receive
git version 1.7.1 / CentOS6.9

トラックバック

このエントリーのトラックバックURL:
http://www.remix.asia/cgi/mt/mt-tb.cgi/7686

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)