ユーザ用ツール

サイト用ツール


git:bare

bare repository

サーバに置いて共有するためのリポジトリ。bareリポジトリはワークツリー(開発作業を行う場所)として使うことはできない

リポジトリの公開

サーバ上で公開するためのリポジトリはbareリポジトリとして作成する。

ただ、今はgithubなどリポジトリを公開・共有できるサービスがあるので自分でbareリポジトリを作成する機会は普通はない

bareリポジトリの作成と公開

httpやsshで公開できるが、ここでは単純なsshの方法を示す

サーバにsshして以下のコマンドを実行

mkdir -p /var/git/repo/hoge.git
cd /var/git/repo/hoge.git
git --bare init

既存のリポジトリから新たにbareリポジトリを作る場合はcloneに--bareオプションをつける

git --bare clone <repository_url>

updateフックを有効にする

bareリポジトリにpushしても反映されない。以下のコマンドを実行すると反映される

git update-server-info

これを毎度手動でやるのは非現実的なのでupdateフックを使うと良い。スクリプトがbareリポジトリの中に用意されている。

cd hooks
mv post-update.sample post-update
chmod 755 post-update

これでsshで公開・共有できるようになる。

git clone ssh://<user_name>@<host_name>/var/git/repo/hoge.git
git/bare.txt · 最終更新: 2022/07/11 16:09 by nullpon