2015/11/22

Just a Note:Simple Git Server on Windows (Using git daemon)

As Server

f:
md reop
cd repo
git init --bare xxxx.git
git daemon --verbose --base-path=f:/repo --export-all --enable=receive-pack



  • --verbose:開啟詳細 log,加了之後除錯比較方便。
  • --base-path=f:/repo:告訴 deamon 你的 git repository 統一放在哪個目錄下,可以在此目錄下建立不同的 git repository。以上述的例子,就是 xxxx.git 的父目錄。
  • --export-all:允許 pull base path 下所有的 git repository
  • --enable=receive-pack:開放匿名存取,目前還沒研究怎麼在 git daemon 裡做 access control。

As Client

git config --global sendpack.sideband false

  • Client 要設定此參數,在 push 時才不會 hang 住。

git clone git://yourserver/xxxx.git

  • git://yourserver 便會指到 daemon 的 base path,後面的 xxxx.git 就是在 base path 下建立的 git repository。