欢迎来使用Git, 它是一个快速的分布式版本控制系统。
这本书的目的是为那些初学者尽快熟悉Git,提供了一个良好的起点。
此书将以介绍Git如何存储数据做为开始,让你了解它和其它版本控制系统有什么不同的背景。这大约要花你20分钟的时间。
接下来,我们会讲一些Git的**基本用法**,那些你将在90%的时间都在使用的命令。这些东东能给一个不错的使用的基础,也许这些命令就是你将使用的全部命令。这一节大约会你30分钟的时间来读。
其后,我们会讲一些稍微复杂的**Git中级用法**,这些用法也许会替换掉前面的基本用法。在你了解前面的基本用法后, 这些看起来像魔术一样的命令,你可能会用起来很爽。
如果前面的这些东东你都掌握了,我们就会讲**Git的高级用法**,这些高级用法也许大多数人很少使用,但是在特定的环境会非常有用。学习这些用法(命令),你将能获得全面的日常Git知识; 你将能成为Git大师。
即然你学会了Git, 我们将会讲**在Git中工作**。我们将要学习 Git 配合脚本、部署工具、编辑器和其它工具一起工作。这一节将帮助你将Git 集成进你的工作环境。
最后我们会有一系列的文章:**low-level documentation**,这些可能对那些Git hacker 有用,包括Git 的内核和协议如何运作等等。
## 反馈与参与
如果你发现本书的中任何错误,或者你想参与进此书的编写,你可以给我写email [schacon@gmail.com](mailto:schancon@gmail.com), 或者你也可以用git得到本书的原始 档案(source) [http://github.com/schacon/gitbook](http://github.com/schacon/gitbook), 然后给我发一个补丁(patch)或者一个pull请求
译者注:如果有哪位朋友发现中译本的错误,或者是想参加此书的翻译,也可以给我发email [liuhui998@gmail.com](mailto:liuhui998@gmail.com), 或者你也可以用git得到本书的原始 档案(source) [http://github.com/liuhui998/gitbook](http://github.com/liuhui998/gitbook), 然后给我发一个补丁(patch)或者一个pull请求
## 参考
这本书由很多不同的资料汇聚起来,如果你更愿意阅读原始的文章和资料,下面提供了它们的url:
* [Git User Manual](http://www.kernel.org/pub/software/scm/git/docs/user-manual.html)
* [The Git Tutorial](http://www.kernel.org/pub/software/scm/git/docs/gittutorial.html)
* [The Git Tutorial pt 2](http://www.kernel.org/pub/software/scm/git/docs/gittutorial-2.html)
* ["My Git Workflow" blog post](http://osteele.com/archives/2008/05/my-git-workflow)
- 1. 介绍
- 欢迎使用Git
- GIT对象模型
- Git目录 与 工作目录
- Git索引
- 2. 第一步
- 安装Git
- 安装与初始化
- 3. 基本用法
- 获得一个Git仓库
- 正常的工作流程
- 分支与合并@基础
- 查看历史 -Git日志
- 比较提交 - Git Diff
- 分布式的工作流程
- Git标签
- 4. 中级技能
- 忽略某些文件
- rebase
- 交互式rebase
- 交互式添加
- 储藏
- Git树名
- 追踪分支
- 使用Git Grep进行搜索
- Git的撤消操作 - 重置, 签出 和 撤消
- 维护Git
- 建立一个公共仓库
- 建立一个私有仓库
- 5. 高级技能
- 创建新的空分支
- 修改你的历史
- 高级分支与合并
- 查找问题的利器 - Git Bisect
- 查找问题的利器 - Git Blame
- Git和Email
- 定制Git
- Git Hooks
- 找回丢失的对象
- 子模块
- 6. Git生态体系
- Git 与之 Windows
- 使用Git进行系统部署
- 与 Subversion 集成
- 从其他代码管理工具迁移到Git
- 图形化的Git
- Git仓库托管
- Git的其它用法
- Git的脚本支持
- Git 与编辑器
- 7. 原理解析
- Git是如何存储对象的
- 查看Git对象
- Git引用
- Git索引
- 打包文件
- 更底层的Git
- 传输协议
- 术语表