Git serve:我想这很简单
我想知道如何简单地发布http:就像Mercurial的hg serve一样! 在Windows /工作箱上执行此操作:
git serve
然后在Linux上的SIMPLY上运行:
git clone http://project project
完了。
导航到你的项目,并用下面的开关启动git-daemon:
cd project git daemon --reuseaddr --base-path=. --export-all --verbose
这告诉git-daemon提供当前目录中的所有项目(我假定它是包含.git /文件夹的项目目录)。 它也告诉它重新使用相同的地址,如果你closures它,并启动备份太快。
你可以把它放到一个批处理脚本中,用一个容易记住的名字,比如“gitserve”,所以你不需要再把它全部输出。 正如在一些评论中所build议的那样,在最近的Git版本中,你可以给Gitconfiguration添加一个别名 :
[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,这样你就可以在linux gitjour show
上做gitjour show
并复制和粘贴。
还有一篇很好的文章,介绍gitjour和Nic博士的其他一些类似工具的概况, 什么是jour,以及为什么他们是RailsCamp08的杀手级应用程序 。
目前使用两个别名 – 服务和枢纽。 用于读/写共享的只读共享和集线器:
[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 。
如果您只想使用Web浏览器公开该存储库
混帐instaweb
$ git instaweb -d apache2 --start $ lynx localhost:1234
这是另一种方法。 你将需要安装python。
- 运行
git update-server-info
- 转到
.git
目录 - 运行
python -mSimpleHTTPServer
(只需在你的gitconfig中创build一个别名)
现在你可以通过git pull http://HOST_NAME:8000/
PS:当使用git守护进程解决scheme时,您可以设置--base-path=.git
因此url是git://HOST/
git-webui是一个git扩展,它提供了一个基于web的用户界面和克隆/从其他计算机拉的能力
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/