如果你在多人协作的软件开发项目中,因版本控制而苦恼;或是渴望深入掌握 Git,提升开发效率与项目管理能力,那么这本书就是你的理想之选。它不仅涵盖基础操作,更深入挖掘高级功能,以清晰的逻辑和丰富的实例,带你从 Git 新手成长为熟练运用的专业人士,助你在开发之路上一帆风顺。
本书是一本关于 Git 开发与管理的指南,全面介绍了 Git 这一版本控制系统。开篇阐述了 Git 成为行业标准的历程,剖析其在多人协作项目中的重要性。书中详细讲解 Git 的基础使用,包括命令行操作和 GitHub 等平台的应用。深入探讨关键功能,如分支管理、合并与变基等。还介绍了重要的 Git 平台及其附加功能,以及 Git 在实践中的多种应用场景,如管理版本配置文件、项目迁移等。最后,针对使用中常见的错误信息提供解决方案,并总结了关键命令。
第 1 章 Git 十分钟入门 ………………………………………………… 1
1.1 Git 是什么 ……………………………………………………………… 1
1.2 从 GitHub 下载软件 …………………………………………………… 3
1.3 支持 Git 的编程 ………………………………………………………… 5
第 2 章 学以致用 ……………………………………………………… 9
2.1 安装 git 命令 …………………………………………………………… 9
2.2 设置 GitHub 账户和存储库 ……………………………………………17
2.3 使用 git 命令 ……………………………………………………………22
2.4 身份验证 …………………………………………………………………36
2.5 以有趣的方式学习 Git(Githug) ………………………………………46
2.6 集成开发环境(IDE)和编辑器 ………………………………………48
2.7 向第三方 GitHub 项目贡献 ……………………………………………55
2.8 同步与备份 ………………………………………………………………57
第 3 章 Git 的基本原则 ……………………………………………… 59
3.1 术语 ………………………………………………………………………59
3.2 Git 数据库 ………………………………………………………………63
3.3 提交 ………………………………………………………………………67
3.4 提交撤销 …………………………………………………………………74
3.5 分支 ………………………………………………………………………83
3.6 合并 ………………………………………………………………………88
3.7 暂存 ………………………………………………………………………96
3.8 远程仓库 …………………………………………………………………97
3.9 解决合并冲突 ………………………………………………………… 107
3.10 变基 ………………………………………………………………… 115
3.11 标签 ………………………………………………………………… 120
3.12 提交引用 …………………………………………………………… 125
3.13 Git 内部细节 ………………………………………………………… 130
第 4 章 Git 仓库中的数据分析 ……………………………………… 134
4.1 搜索提交 ……………………………………………………………… 134
4.2 搜索文件 ……………………………………………………………… 145
4.3 搜索错误 ……………………………………………………………… 150
4.4 统计与可视化 ………………………………………………………… 152
第 5 章 GitHub ……………………………………………………… 157
5.1 拉取请求 ……………………………………………………………… 158
5.2 操作 …………………………………………………………………… 162
5.3 包管理器 ……………………………………………………………… 170
5.4 自动安全扫描 ………………………………………………………… 176
5.5 GitHub 其他功能 ……………………………………………………… 179
5.6 GitHub 命令行界面 …………………………………………………… 185
5.7 Codespaces …………………………………………………………… 188
第 6 章 GitLab………………………………………………………… 190
6.1 本地安装与云端 ……………………………………………………… 191
6.2 安装 …………………………………………………………………… 191
6.3 第一个项目 …………………………………………………………… 198
6.4 流水线 ………………………………………………………………… 200
6.5 合并请求 ……………………………………………………………… 209
6.6 Web IDE ……………………………………………………………… 211
6.7 Gitpod ………………………………………………………………… 212
第 7 章 Azure DevOps、Bitbucket、Gitea 和 Gitolite …………… 215
7.1 Azure DevOps ………………………………………………………… 215
7.2 Bitbucket ……………………………………………………………… 220
7.3 Gitea …………………………………………………………………… 221
7.4 Gitolite ………………………………………………………………… 231
第 8 章 工作流程 …………………………………………………… 234
8.1 团队操作指南 ………………………………………………………… 234
8.2 独立开发 ……………………………………………………………… 235
8.3 团队的功能分支 ……………………………………………………… 237
8.4 合并 / 拉取请求 ……………………………………………………… 244
8.5 长期运行的分支:Gitflow …………………………………………… 247
8.6 基于主干的开发 ……………………………………………………… 252
8.7 选择哪种工作流程更合适? ………………………………………… 255
第 9 章 工作技巧 …………………………………………………… 257
9.1 钩子 …………………………………………………………………… 257
9.2 简洁的提交信息 ……………………………………………………… 261
9.3 子模块和子树 ………………………………………………………… 267
9.4 Bash 和 Zsh …………………………………………………………… 277
9.5 双重身份验证 ………………………………………………………… 279