レンタルサーバをgitのリモートリポジトリの管理に使う。
Command環境
- さくらのレンタルサーバ スタンダード
- TeraTerm
サーバー側
コマンド実行で、ディレクトリも自動で作ってくれた。
git init --bare ~/git/test/.git
ローカル側
git push 時にsshのパスワードを要求される。
git init
git remote add sakura ssh://ユーザー名@ユーザー名.sakura.ne.jp/home/ユーザー名/git/test/.git
gitraw相当のものも作ってみる。
サーバー側で以下の作業をした。
これで、https://ユーザー名.sakura.ne.jp/適当なディレクトリに環境が整う。
mkdir /www/適当なディレクトリ
cd /www/適当なディレクトリ
git init
git remote add sakura /home/ユーザー名/git/test/.git
git pull sakura master
hookを利用する。
remote リポジトリを設置した/home/ユーザー名/git/test/.git/hook/の中にシェルスクリプトのファイル群がある。
post-receive というファイルに記述することで、pushを受けた際に自動実行される。
パーミッションを変更し、実行可能にしておくこと。
#!/bin/sh
cd /home/ユーザー名/www/適当なディレクトリ
unset GIT_DIR
git pull /home/ユーザー名/git/test/.git
/.ssh/configに記載された宛先を利用する。
2025/10/30追記
cloudflareでトンネルを掘って接続した自前のサーバにリモートリポジトリを設置した際の備忘録
~/.ssh/config
Host cloudflared
user <user名>
...
git remote add cloudflared ssh://cloudflared/home/<user名>/git/test/.git
参考
unset GIT_DIR がわからなかったので助かった。
さくらレンタルサーバにGitリモートリポジトリを作って自動デプロイ – voltaney’s blog