编辑推荐
带你一窥GitHub内部使用的工具。
内容简介
本书一窥GitHub内部使用的工具,以叙事的方式描述构建软件元工具的相关过程,期间不只介绍相关的技术,还会说明折中方案、重构的现实意义,以及编写元工具面临的挑战。
作者简介
作者Chris Dawson,曾就职于Apple、Virage和RealNetworks等知名IT企业,现于eBay工作。他积极参与并见证了GitHub的发展,自己也开了一家公司Webiphany。
章节目录
版权信息
O'Reilly Media, Inc. 介绍
前言
第1章 开放的GitHub API
1.1 cURL
1.2 列举API路径
1.3 JSON格式
1.3.1 在命令行中解析JSON
1.3.2 cURL的调试开关
1.4 重要的首部
1.5 跟随超媒体API
1.6 身份验证
1.6.1 用户名和密码验证
1.6.2 OAuth
1.7 状态码
1.7.1 成功(200或201)
1.7.2 不合规的JSON(400)
1.7.3 错误的JSON(422)
1.7.4 成功创建(201)
1.7.5 完全没变化(304)
1.7.6 GitHub API的频率限制
1.7.7 获知频率限制
1.8 使用条件请求规避频率限制
1.9 在Web中访问内容
1.9.1 JSON-P
1.9.2 CORS支持
1.9.3 指定响应的内容格式
1.10 小结
第2章 Gist和Gist API
2.1 简便的代码分享工具
2.2 Gist是仓库
2.2.1 在HTML中嵌入Gist
2.2.2 在Jekyll博客中嵌入Gist
2.3 使用命令行创建Gist
2.4 Gist是功能完整的应用
2.5 渲染Gist的Gist
2.5.1 深入了解Gist API
2.5.2 使用Octokit获取超媒体数据
2.6 小结
第3章 GitHub使用的维基库Gollum
3.1 “史麦戈的故事……”
3.1.1 与仓库关联的维基
3.1.2 标记和结构
3.2 改造Gollum
3.3 开始创建Gollum编辑器
3.4 以编程的方式处理图像
3.5 使用Rugged库
3.6 优化图像存储
3.7 在GitHub中查看
3.8 改善修订版本导航
3.9 修缮素材页面之间的链接
3.10 小结
第4章 Python和Search API
4.1 Search API概述
4.1.1 身份验证
4.1.2 结果的格式
4.1.3 搜索运算符和限定符
4.1.4 排序
4.2 Search API详解
4.2.1 搜索仓库
4.2.2 搜索代码
4.2.3 搜索工单
4.2.4 搜索用户
4.3 示例应用
4.4 Python
4.4.1 AGitHub
4.4.2 WxPython
4.4.3 PyInstaller
4.5 编写代码
4.5.1 获取Git凭据的辅助函数
4.5.2 窗口和界面
4.5.3 登录GitHub
4.5.4 搜索GitHub
4.5.5 显示结果
4.6 打包
4.7 小结
第5章 .NET和Commit Status API
5.1 Commit Status API
5.1.1 原始状态
5.1.2 合并后的状态
5.1.3 创建状态
5.2 编写一个应用
5.2.1 要使用的库
5.2.2 开发环境
5.2.3 发送请求
5.2.4 OAuth验证流程
5.2.5 处理状态的函数
5.3 小结
第6章 Ruby和Jekyll
6.1 学习使用Jekyll构建博客
6.2 Jekyll是什么
6.3 使用Jekyll快速创建博客
6.3.1 YAML格式的头部元信息
6.2.2 Jekyll使用的标记
6.3.3 使用Jekyll命令
6.3.4 在Jekyll中设定隐私级别
6.3.5 主题
6.3.6 发布到GitHub中
6.3.7 托管在自己的域名名下
6.4 导入其他博客
6.4.1 导入WordPress
6.4.2 从其他博客中导入
6.5 爬取网站,导入Jekyll
6.5.1 爬取策略
6.5.2 设置
6.5.3 爬取标题
6.5.4 借助交互式Ruby控制台改善
6.5.5 编写测试,处理缓存
6.5.6 输出Jekyll文章
6.5.7 使用jekyll命令行工具
6.5.8 使用Liquid Markup编写主索引文件
6.5.9 爬取正文和作者
6.5.10 把图像添加到Jekyll中
6.5.11 自定义样式(CSS)
6.5.12 通过GitHub的“派生”功能鼓励协作
6.5.13 把博客发布到GitHub中
6.6 小结
第7章 Android和Git Data API
7.1 搭建环境
7.1.1 创建Jekyll博客
7.1.2 Android开发工具
7.2 新建项目
7.2.1 编辑Gradle构建文件
7.2.2 Android默认的主活动
7.3 自动测试Android应用
7.3.1 对GitHub客户端做单元测试
7.3.2 对Android应用做UI测试
7.4 实现应用
7.4.1 编写登录GitHub的代码
7.4.2 编写与GitHub交互的代码
7.4.3 编写博客内容
7.4.4 GitHub服务
7.4.5 从仓库和分支中获取基SHA
7.4.6 创建blob
7.4.7 生成树
7.4.8 创建提交
7.4.9 更新上游资源
7.4.10 通过全部测试
7.5 小结
第8章 CoffeeScript、Hubot和Activity API
8.1 Activity API
8.2 让拉取请求得到各方认同
8.2.1 注意事项和局限
8.2.2 创建常规的Hubot
8.2.3 注册Slack账户
8.2.4 在本地运行Hubot
8.3 部署到Heroku
8.4 Activity API概述
8.4.1 编写Hubot扩展
8.4.2 通过拉取请求审查代码
8.4.3 使用OAuth令牌注册事件
8.4.4 发起真实的拉取请求
8.4.5 通过HTTP POST请求处理拉取请求通知
8.5 小结
第9章 JavaScript和Git Data API
9.1 构建一个咖啡店数据库并托管在GitHub中
9.2 搭建环境
9.2.1 绑定域名
9.2.2 添加支持库
9.3 使用GitHub.js开发一个AngularJS应用
9.3.1 规划应用的数据结构
9.3.2 让应用易于测试
9.3.3 测试数据
9.3.4 修改coffeetech.js文件
9.4 添加地理编码功能
9.5 添加登录功能
9.6 显示(即将)由用户提供的数据
9.7 接受拉取请求
9.8 实现安全的登录方式
9.8.1 身份验证需要服务器
9.8.2 使用Firebase处理身份验证过程
9.8.3 测试Firebase
9.8.4 实现Firebase登录功能
9.9 小结
附录A GitHub企业版
A.1 安装
A.2 管理
A.3 端点
A.4 单独的主机名与挂载点
A.5 命令行客户端工具:cURL
A.6 使用客户端库的请求示例
A.6.1 Ruby
A.6.2 Java
A.6.3 JavaScript
A.6.4 Python
A.6.5 C#
A.7 管理API
A.8 文档
附录B GitHub对Ruby、NodeJS(和shell)的利用
B.1 GitHub和Ruby
B.1.1 安装Ruby
B.1.2 重要的Ruby和RVM概念
B.1.3 安装Ruby的过程中可能遇到的问题
B.2 积极拥抱NodeJS的GitHub
B.2.1 安装NodeJS
B.2.2 Node版本管理工具
B.2.3 package.json
B.3 命令行基础知识和shell
B.3.1 shell注释
B.3.2 为命令提供变量
B.3.3 把命令分成多行
B.3.4 把输出传给后续命令
B.3.5 重定向
作者简介
关于封面
GitHub实践是2017年由人民邮电出版社·图灵出品出版,作者[美]Chris Dawson。
得书感谢您对《GitHub实践》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。