[[Gitでバージョン管理]]

外部サービスは使わずに自力でCentOS6系にGitサーバを構築してみます。~
やってみたら想像以上に簡単でした。

*インストール [#z1fc78f8]

 # yum install git git-deamon git-all

*xinetdの設定 [#q51a64f5]

 # vi /etc/xinetd.d/git

 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

*リポジトリの作成 [#lad72108]

 # cd /var/lib/git/
 # mkdir -p public_git/test.git
 # cd public_git/test.git
 # git --bare init --shared
 # cd ..
 # chown -R root:git test.git

*gitグループの作成 [#qf477241]

 # groupadd git

*既存ユーザーのgitグループへの追加 [#g15f8d70]

userアカウントをgitグループへ追加する場合

 # usermod -aG git user

*git専用のユーザーを作成する場合 [#taa86aa1]

 # useradd -g git gituser

追加後に /etc/passwd を編集して、該当ユーザーのシェルを

  /usr/bin/git-shell

へ変更します。

*ローカルにクローン [#ma3c3ac8]

適当なフォルダ test を作成し、上記で作成したリポジトリに対してクライアントTortoiseGitにて「Git クローン(複製)」を実行~
URLは以下

 ssh://user@example.com/var/lib/git/public_git/test.git

これでGitにて管理できるようになります。

*別のリポジトリを作成する場合 [#m30805d0]

 # cd /var/lib/git/public_git
 # mkdir test2.git
 # cd test2.git
 # git --bare init --shared
 # cd ..
 # chown -R root:git test2.git

URLは以下になります。

 ssh://user@example.com/var/lib/git/public_git/test2.git

*サーバ側でクローンする場合 [#ne314e40]

 $ cd /home
 $ mkdir test
 $ cd test
 $ git clone ssh://user@127.0.0.1/var/lib/git/public_git/test.git ./

プルする場合は

 $ git pull

*Gitの移動 [#t4d4947f]

参考~
https://qiita.com/ysti/items/be67a6e3c5754fac088a

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS