« PHPエラー関連 | メイン | centos7 network周り »
2017年11月11日
git apache経由を導入してみる
以前ssh経由のgitを導入したが、パスワード毎回入れないといけないので、apache経由を導入してみる。
subversionもapache経由ならID PASS省略できるしいけるような気がするので。
環境centos7です。
#mod_cgi、 mod_alias、 mod_env、 mod_rewrite が必要らしい
#/usr/lib64/httpd/modules/以下に全部入ってるのでこれはOKっぽい
#git インストール
yum install git
mkdir /home/mygit
cd /home/mygit/
#初期化
git init
#bareリポジトリかどうか調べる
git config --get-all core.bare → false
#ノンベアリポジトリはワーキングディレクトリを持つ
#ベアリポジトリはワーキングディレクトリを持たない。更新情報だけを持っている
#コミットする場所はbareにする
git config --bool core.bare true
#apacheさんが使うので所有者変更
chown -R apache.apache /home/mygit/
#Apache の設定
/etc/httpd/conf.d/git.conf
#-------------------------------
SetEnv GIT_PROJECT_ROOT /home/mygit/
SetEnv GIT_HTTP_EXPORT_ALL
ScriptAlias /mygit/ /usr/libexec/git-core/git-http-backend/
AuthType Basic
AuthName "go away!!"
Require valid-user
AuthUserFile /pathto/.htpasswd
#-------------------------------
とりあえずこれで
http://example.com/mygit のURL使ってcloneできた
ソースの自動展開とかは以前のメモを参照。
うん やってみたけど、やっぱりコミットとプッシュの2段階がどうもめんどくさい。
vmware とかでソース部分をファイル共有してコミットのみで構築テストして、OKだったら遠隔サーバにプッシュかな?
これはvmwareで作業用のブランチをファイル共有して動作確認後、そこににコミットして記録を残しつつ、完成時のバージョンのみマスターにコミットかな。
作業時毎にブランチ切ろうかな。
この方法なら遠隔地サーバはバックアップという意味合いだから、マスターと作業記録ブランチをたまにプッシュするだけなのでIDPASS問題はOKだし、コミットとプッシュ毎回2作業の必要ないからこれがいいかな。
となると自動展開デプロイの必要ないね。
てか そう考えると ssh経由でも何も問題ないのかww
投稿者 muuming : 2017年11月11日 10:08