30078


git は、レポジトリ自体をたとえば apache で公開してやれば、その公開された url を用いて、 clone
はできるようになるのだと理解しています。そしてこれは、ローカルで実行した `git clone` が、 http
通信を適切に行いながらファイルを取得しているのだと考えれば理解できます。

github などでは、 https のプロトコルで clone したレポジトリを、 push することができます。これは、ただ単に git レポジトリを
apache に乗っけただけでは、同じことは実現できないと思っています。

質問: http(s) で push できるようにサーバー上の git レポジトリを公開するには、何をしたらいいのでしょうか？


CC BY-SA 4.0
2016-11-03T09:23:38.710
30077
2018-05-22T17:02:31.347
2018-05-22T17:02:31.347
3060
754
question
git
git レポジトリを http(s) で push できるように公開するには？


と、質問をまとめた直後に少し調べたら何となくわかったので、自己回答を。。

具体的な手順はたとえばこのサイト (<http://tech.farend.jp/blog/2015/04/07/git-http-server/>)
が参考になります。動作は未検証なので、どんなことをやっているかだけをまとめます。

  * git は、インストールされた際に、 `git-http-backend` なるコマンドが付いてくる
  * cgi としてこのコマンドを利用するように apache の設定を行ってやる
  * その他設定 (Basic 認証、とか）

によって、 push も可能な git レポジトリを http(s) で公開できるようです。


CC BY-SA 3.0
2016-11-03T09:35:50.307
30078
2016-11-03T09:35:50.307
754
30077
answer