Pro Git 中文版 第2版 2.1.66Git 自带的名为 git-http-backend 的 CGI 脚 本。 该 CGI 脚本将会读取由 git fetch 或 git push 命令向 HTTP URL 发送的请求路径和头部信息, 来判断 该客户端是否支持 HTTP 通信(不低于 1.6.6 版本的客户端支持此特性)。 如果 CGI 发现该客户端支持智能 (Smart)模式,它将会以智能模式与它进行通信, 否则它将会回落到哑(Dumb)模式下(因此它可以对某些 新操作(一个非零的退出码将终止推送过程)。 Git 的一些日常操作在运行时,偶尔会调用 git gc --auto 进行垃圾回收。 pre-auto-gc 钩子会在垃圾回收 开始之前被调用,可以用它来提醒你现在要回收垃圾了,或者依情形判断是否要中断回收。 服务器端钩子 除了客户端钩子,作为系统管理员,你还可以使用若干服务器端的钩子对项目强制执行各种类型的策略。 这些 钩子脚本在推送到服务器之前和之后运行。 推送到服务器前运行的钩子可以在任何时候以非零值退出,拒绝推 用户准备推送的修订版本(revision) 如果推送是通过 SSH 进行的,还可以获知进行此次推送的用户的信息。 如果你允许所有操作都通过公匙授权的 单一帐号(比如“git”)进行,就有必要通过一个 shell 包装脚本依据公匙来判断用户的身份,并且相应地设定 环境变量来表示该用户的身份。 下面就假设 $USER 环境变量里存储了当前连接的用户的身份,你的 update 脚 本首先搜集一切需要的信息: #!/usr/bin/env0 码力 | 501 页 | 19.30 MB | 1 年前3
Pro Git 中文版 第2版 2.1.66自带的名为 git-http-backend 的 CGI 脚本。 该 CGI 脚本 将会读取由 git fetch 或 git push 命令向 HTTP URL 发送的请求路径和头部 信息, 来判断该客户端是否支持 HTTP 通信(不低于 1.6.6 版本的客户端支持 此特性)。 如果 CGI 发现该客户端支持智能(Smart)模式,它将会以智能 模式与它进行通信, 否则它将会回落到哑(Dumb)模式下(因此它可以对某 个非零的退出码将终止推送过程)。 Git 的一些日常操作在运行时,偶尔会调用 git gc --auto 进行垃圾回收。 pre-auto-gc 钩子会在垃圾回收开始之前被调用,可以用它来提醒你现在要回 收垃圾了,或者依情形判断是否要中断回收。 服务器端钩子 除了客户端钩子,作为系统管理员,你还可以使用若干服务器端的钩子对项目 强制执行各种类型的策略。 这些钩子脚本在推送到服务器之前和之后运行。 推送到服务器前运行 ) 如果推送是通过 SSH 进行的,还可以获知进行此次推送的用户的信息。 如果 你允许所有操作都通过公匙授权的单一帐号(比如“git”)进行,就有必要通过 一个 shell 包装脚本依据公匙来判断用户的身份,并且相应地设定环境变量来 表示该用户的身份。 下面就假设 $USER 环境变量里存储了当前连接的用户的 身份,你的 update 脚本首先搜集一切需要的信息: #!/usr/bin/env0 码力 | 670 页 | 13.59 MB | 1 年前3
共 2 条
- 1













