介绍
类似 GitHub 这样的代码托管服务,是软件研发过程中不可缺少的一环,在国内目前还没有特别好的服务,Gitee 很好地填补了这个空白。一起努力,越来越好,为中国技术人群提供更多更贴心的服务。
Gitee的为开发人员提供了友好的开发人员文档 GiteeOpenAPI 这里讲到的WebHook就是其提供的功能接口,那么通过这些接口我们能做些什么呢?
- 当Push代码到仓库
- 当提交Tag到仓库
- 当创建/关闭Issue
- 当评论了Issue/代码等等
- 当合并请求和合并后
当自己的代码仓库出现以上几种情况时,我们可以指定每种情况发生时的回调地址,来通知我们的程序应该做些什么。
举个例子:
当我的代码push到gitee后,希望现场环境的代码拉取最新的版,并重新部,此时我们应该怎么做呢?很多人一开始想到的是,在服务端写个轮询,每隔一段时间请求一次gitee仓库,查看仓库是否有更新,这种方案是可行的,不过效率相对低下,且较为占用服务器资源。这个时候就体现出了钩子函数好了,gitee为我们提供了上面五种使用场景,针对每个仓库可以有多个仓库钩子,每个钩子可以通过以上五种任意场景触发己设定好的请求
如何使用
1. 找到GitEE【钩子Webhooks】
首先我们打开Gitee Developer API 文档,找到左侧菜单栏的【钩子Webhooks】
2. 创建一个仓库WebHook

此处我们只需要填写以下几个参数即可创建一个仓库钩子:
access_token 用户授权码
这个参数需要我们到gitee的设置页面,找到私人令牌 ,生成一个新令牌即可获得。
owner 仓库所属空间地址(企业、组织或个人的地址path)
这个参数指的是gitee设置页面里的【个人资料】页面里的【个人空间地址】

repo 仓库路径(path)
这个参数指的是新建仓库时自定义的仓库路劲

url
远程HTTP URL
这个参数指的就是咱们自己的服务器要被gitee触发事件时调用的接口
push_events
Push代码到仓库
页面默认会指定这个参数为True,当咱自己指定的仓库发生push的时候,会触发当前钩子事件,gitee会去请求咱提供的url参数。
3. 完成
填写完以上参数,基本上就可以实现上面例子所说的功能了
结语
gitee提供了非常友好的开发文档,尤其是国内开发人员,相比起github,gitee上下传速度更快,个人比较喜欢gitee。