Mercurial 's hg serveのように、http =で簡単に公開する方法を知りたいです! Windows /ワークボックスでこれを行います:
git serve
そして、Linuxボックスに簡単に行きます:
git clone http://project project
終わった。
プロジェクトに移動し、次のスイッチを使用してgit-daemonを起動します。
cd project
git daemon --reuseaddr --base-path=. --export-all --verbose
これは、git-daemonに現在のディレクトリ(.git /フォルダーを含むプロジェクトディレクトリであると仮定)内のすべてのプロジェクトを提供するように指示します。また、シャットダウンしてから再起動する速度が速すぎる場合は、同じアドレスを再使用するように指示します。
これを「gitserve」のような覚えやすい名前でバッチスクリプトに入れることができるので、もう一度すべて入力する必要はありません。一部のコメントで示唆されているように、Gitの最近のバージョンでは Git構成にエイリアスを追加 :
[alias]
serve = !git daemon --reuseaddr --verbose --base-path=. --export-all ./.git
サーバー(Windowsボックス)でそれが完了したら、次のことができます。
git serve
git-daemonはトランスポートにgit://プロトコルを使用するため、クライアント(Linuxボックス)で次を実行する必要があります。
git clone git://123.456.789.111/ project
独自のバッチスクリプトを記述するのではなく、 gitjour を使用します。 gitデーモンを正しく起動する方法を知っており、mDNSを介してクローンURLをブロードキャストするため、gitjour show
Linuxボックスでコピーして貼り付けます。
また、gitjourの概要とDr. Nicの他の同様のツールの数に関する優れた記事 * jourとは何で、RailsCamp08のキラーアプリである理由 .
現在、サーブとハブの2つのエイリアスを使用しています。読み取り専用共有の提供と読み取り/書き込み共有のハブ:
[alias]
serve = !git daemon --base-path=. --export-all --reuseaddr --informative-errors --verbose
hub = !git daemon --base-path=. --export-all --enable=receive-pack --reuseaddr --informative-errors --verbose
また、gitデーモンを介した共有に関する詳細なチュートリアルがあります: http://l.rw.rw/git-daemon .
これは別の方法です。 pythonがインストールされている必要があります。
git update-server-info
を実行します.git
ディレクトリに移動しますpython -mSimpleHTTPServer
を実行します(gitconfigでエイリアスを作成するだけです)
これで、git pull http://Host_NAME:8000/
でレポジトリをプルできます
PS:gitデーモンソリューションを使用する場合、--base-path=.git
を設定して、URLをgit://Host/
に設定できます。
.git/configに次の行を追加します
[instaweb]
local = true
httpd = webrick
port = 4231
その後、実行する
git instaweb
Git 2.21(2019年2月)では、pythonと git instaweb
:
commit 2eb14bb (2019年1月28日)by Arti Zirk(artizirk
) を参照してください。
( C浜野順夫-gitster
- in commit abf39e 、05 Feb 2019)
git-instaweb
:追加Python builtinhttp.server
サポートこのパッチでは、
git-instaweb
オプションを介してPythonhttp.server
CGIハンドラーを使用して-d python
]を起動できます。
git-instaweb
は、CGIスクリプトがhttp.server
サブディレクトリとディレクトリインデックス内にある必要があるCGIハンドラの制限に対処するGIT_DIR/gitweb/
(cgi-bin
内)の小さなラッパーを生成します。簡単に変更できません。実装を小さく保つために、gitweb
がurl/cgi-bin/gitweb.cgi
で実行され、/
を開くときに自動リダイレクトが実行されます。生成されたラッパーは、Python 2および3。
Pythonは、ほとんどの最新のLinuxディストリビューションにデフォルトでインストールされており、
git instaweb -d python
を他の何も必要とせずに実行できます。
git-webuiは、Webベースのユーザーインターフェイスと、他のコンピューターからクローン/プルする機能を提供するgit拡張機能です。
https://github.com/alberthier/git-webui
$ cd my_git_repo
$ git webui
他の人ができる
$ git clone http://<ip-of-your-computer>:8000/ repoclone
または
$ git pull http://<ip-of-your-computer>:8000/