公共访问
匿名的读取权限该怎么实现呢?也许除了内部私有的项目之外,你还需要托管一些开源项目。或者因为要用一些自动化的服务器来进行编译,或者有一些经常变化的服务器群组,而又不想整天生成新的 SSH 密钥 — 总之,你需要简单的匿名读取权限。
或许对小型的配置来说最简单的办法就是运行一个静态 web 服务,把它的根目录设定为 Git 仓库所在的位置,然后开启本章第一节提到的 post-update
挂钩。这里继续使用之前的例子。假设仓库处于 /opt/git
目录,主机上运行着 Apache 服务。重申一下,任何 web 服务程序都可以达到相同效果;作为范例,我们将用一些基本的 Apache 设定来展示大体需要的步骤。
首先,开启挂钩:
$ cd project.git
$ mv hooks/post-update.sample hooks/post-update
$ chmod a+x hooks/post-update
post-update
挂钩是做什么的呢?其内容大致如下:
$ cat .git/hooks/post-update
#!/bin/sh
#
# An example hook script to prepare a packed repository for use over
# dumb transports.
#
# To enable this hook, rename this file to "post-update".
#
exec git-update-server-info
意思是当通过 SSH 向服务器推送时,Git 将运行这个 git-update-server-info
命令来更新匿名 HTTP 访问获取数据时所需要的文件。
接下来,在 Apache 配置文件中添加一个 VirtualHost 条目,把文档根目录设为 Git 项目所在的根目录。这里我们假定 DNS 服务已经配置好,会把对 .gitserver
的请求发送到这台主机:
<VirtualHost *:80>
ServerName git.gitserver
DocumentRoot /opt/git
<Directory /opt/git/>
Order allow, deny
allow from all
</Directory>
</VirtualHost>
另外,需要把 /opt/git
目录的 Unix 用户组设定为 www-data
,这样 web 服务才可以读取仓库内容,因为运行 CGI 脚本的 Apache 实例进程默认就是以该用户的身份起来的:
$ chgrp -R www-data /opt/git
重启 Apache 之后,就可以通过项目的 URL 来克隆该目录下的仓库了。
$ git clone http://git.gitserver/project.git
这一招可以让你在几分钟内为相当数量的用户架设好基于 HTTP 的读取权限。另一个提供非授权访问的简单方法是开启一个 Git 守护进程,不过这将要求该进程作为后台进程常驻 — 接下来的这一节就要讨论这方面的细节。
http://git-scm.com/book/zh/%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E7%9A%84-Git-%E5%85%AC%E5%85%B1%E8%AE%BF%E9%97%AE
相关推荐
主要介绍亚马逊接SP-API口申请PII权限相关,这部分是针对对数据库、文件服务器和桌面/开发人员端点的公共访问所使用的网络保护控制。 使用的时候一定要根据自己搭建环境进行更改,不要直接复制。
数据库访问公共类
this.dgDataGridView = this.dataGridView1; this.EidtPanel = pEdit; this.ModuleID = "1"; this.TableName = "Item"; this.PageTool = ldhPageTool1; this.IsDelete = true;...//如果为true的话,不把数据返回,...
轻量级数据访问类,采用反射工厂模式支持多种数据库的访问,实现了数据库的常规访问、存储过程调用、事务处理等功能。可用于不同用途的数据库系统开发。 代码和使用文档均为本人自己编写,仅用于交流研究,若有错误...
(三层 + 实体+公共数据库访问层)(三层 + 实体+公共数据库访问层).
ChatGLM6B默认的部署程序仅支持单用户访问,多用户则需要排队。测试过相关的几个Github多用户工程,但是其中一些仍然不满足要求。本程序实现多用户同时访问Chat GLM的部署接口,包括http、websocket(流式输出,...
杜彩公共杜彩语言的公共访问目录以下目录可用于公共编辑: 词汇项目文字摘录翻译范例语法基本指南以下目录不可用于公共编辑,但可以自由请求: 高级语法指南“ CruseirosGuïtsaul Aive-a Ducaia”(Cruseiro杜卡...
(公共访问) 初始步骤 注意:建议为其中一个子网分配名称“公共”。 步骤1 转到路由表。 名称退出表(公共) 选择公共表。 选择“路线”选项卡,然后单击“编辑路线” 。 目标: 0.0.0.0/0并指向: igw-xxxx ...
具有Vivacity的protobuf消息架构的公共访问回购 介绍 这是用于交换关于检测道路上物体(例如汽车,行人,骑自行车的人)的数据的方案。 该模式已公开提供,以鼓励跨行业的协作和数据的开放交换。 它还旨在: 通过...
Alfred工作流程可帮助您将本地图像或图像从剪贴板上传到云存储提供商(现在支持 , 和 ),并获取公共访问URL。 为什么要创建这个? Markdown是编写文档并产生美观外观的一种出色语言。 但是,当您在文档中插入本地...
A_Different_Vibe 使用ADV平台进行测试以进行公共访问
仇恨记事本公共访问 API,用于控制充斥互联网的巨魔和可恶的人。 开发作为关于如何使用 Spring Boot 构建 RESTful API 的说明。
坚持面向对象的程序员觉得这样的类是厌恶的,应该被具有私有属性和公共访问方法的类(getter)所取代,而对于可变类来说,它们应该被替换为 setter 设值方法
1、描述您的机构针对数据库、文件服务器和桌面/开发人员端点的公共访问所使用的网络保护控制。 2、描述您的机构如何单独识别有权访问亚马逊信息的员工,并在需要知道的基础上限制员工访问亚马逊信息。 3、描述贵...
(2) Oracle 10gR2 RAC数据库公共访问网址建议不使用保留网段的IP地址(如:10.*.*.*、172.16.*.*、192.168.*.*) (3) 每台数据库服务器配置两块千兆网络适配器,一块用于数据库服务器间的私有通信,另一块提供数据库...
agent :连接到中央实例(上面的server )的分布式实例,以使其私有服务可远程访问。 groom非常适合以下场景: 团队成员或客户需要从任何地方对您当前的开发进行质量检查,而无需部署到云提供商。
亚马逊开放平台申请注册开发者账号,amazon需要对开发者进行资料问答,上网搜索了很多资料都没有全的,因此整理了一份详细的QA文 需要注意的点: ...2、切勿直接复制抄袭网上的问答,需要适当做调整。
问题 - 描述贵组织用来限制对数据库、文件服务器和桌面/开发者终端节点的公共访问权限的网络保护控制措施 2.资产管理 2.3. 问题 - 描述贵组织目前实施的机制,用于监控亚马逊信息并防止从员工个人设备(例如 USB ...
公共可访问的WLANWindowsVista客户端配置.doc
- `DAO.js` 提供的公共访问数据库的方法 - `models` 存放具体数据库 ORM 模型文件 - `modules` 当前项目模块 - `authorization.js` API权限验证模块 - `database.js` 数据库模块(数据库加载基于 nodejs-orm2 库...