CentOSにGitサーバーを構築してみました。
ファイル履歴の管理が面倒だなと思いつつ、Gitはめんどくさそうだなと放置していたのですが、いい加減放置できなくなったので重い腰を上げて動かしてみました。
ローカルリポジトリだけで済むだろうといわれそうですが、気分で端末を変えてしまう私はCentOSにGitサーバーを立てて管理したほうがやりやすいので。
まずはxinetdのインストール
# yum -y install xinetd
次にGitのコンポーネントをまとめてインストール
最新バージョンは他に出ているはずですが、今回はそこまで求めないのでデフォルトでインストールできるバージョンで構築します。
# yum -y install git git-daemon git-all # git --version git version 1.7.1
インストールの順番を間違えたっぽく、”/etc/xinetd/conf.d/”に”git”という設定ファイルが生成されなかったので書きます。
# vi /etc/xinetd.d//git # default: off # description: The git damon allows git repositories to be exported using \ # the git:// protocol. service git { disable = no # <- ここを変更 socket_type = stream wait = no user = nobody server = /usr/libexec/git-core/git-daemon server_args = --base-path=/var/lib/git --export-all --user-path=public_git --syslog --inetd --verbose log_on_failure += USERID }
xinetdの起動(再起動)
# service xinetd restart
gitサーバーにリポジトリを作成
注:途中のディレクトリが生成されてなかったらそれも生成すること
# cd /var/lib/git # mkdir public_git # mkdir public_git/test.git # cd public_git/test.git # git --bare init --shared Initialized empty shared Git repository in /var/lib/git/public_git/test.git/
GitユーザーおよびGitグループの追加
リモートからのgitサーバーのアクセスにはgituserを使用する
# groupadd git # useradd gituser # passwd gituser # 適宜パスワードを設定 # usermod -G git gituser # chown -R root:git . # vi /etc/passwd gituser:x:501:502::/home/gituser:/bin/bash ↓ gituser:x:501:502::/home/gituser:/usr/bin/git-shell
最近のコメント