CentOS@CentOS6.7にGitを構築してみる


はじめに

みなさんこんにちは。のぶです。
そろそろ開発を始めたいなーということで、まずはその地盤づくり。
CentOSにバージョン管理システムであるGitを導入してみます。
基本ぼっち開発の予定ですが、Gitを使ってソースコードを管理するのは何かと便利ですよね。

Gitの構築

必要なものをインストールする

yum install git git-deamon git-all xinetd
chkconfig xinetd on
/etc/init.d/xinetd start

git-deamonとは、認証がいらないGitプロトコルでリポジトリにアクセスできるようにするもの。
xinetdとは、指定されたポートにアクセスがあると、あらかじめ設定しておいた情報をもとに対応したサービスを起動するもの。

インストール後、xinetdを起動する。

xinetdの設定

vi /etc/xinetd.d/git-daemon

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
}

/etc/rc.d/init.d/xinetd restart

/etc/xinetd.d/にgit-daemon用の設定ファイルを作成し、再起動します。

リポジトリの作成

cd /var/lib/git/
mkdir public_git
mkdir public_git/test.git
cd public_git/test.git
git --bare init --shared

groupadd git
usermod -G wheel,git user(ユーザー名)
chown -R root:git /var/lib/git/

git用ディレクトリを作成し、そこにテストリポジトリを作成します。
その後、git操作用のグループを作成、git用のユーザーをgitグループに追加します。

Windows側の準備

以上でgitサーバーの構築は完了したのですが、今度はローカルの開発環境であるWindowsでgitを使用できるようにします。
今回は「私家版 Git For Windowsのインストール手順」のサイトを参考に、Git For Windowsを入れました。

Git For Windowsをインストール後

Git For Windowsをインストール後、ローカルの設定を行います。

mkdir gitProject
cd gitProject
git init
echo "Git Test." > test.txt
git add test.txt
git commit -m "First Commit"
git remote add test ssh://[user]@nobserver.net:[port]/var/lib/git/public_git/test.git
git push test master

Test用のディレクトリ、ファイルを作成し、コミット・プッシュまでを行います。
が、、いろいろつまりました。

  • ローカル側に ~/.ssh ディレクトリを作成、秘密鍵を登録しないと!
  • git remote add を間違えた!! → gitProject/.git/config の編集。
  • git push origin master コマンドでつまづく。。。 git push test master に変更

等です。。。
普段からGitを触ってないとてんぱりますね。

これでなんとか、Gitサーバー構築&ローカルからプッシュまでができました。
実践的に使用していく上でいろいろ設定等変えないといけない気がします。

ということで今回は以上です。ありがとうございました。

参考にしたサイト

Leave a Comment.