16 合并项目
16.1 旧解决方案:部分检出
16.2 显而易见的解决方案:将代码导入项目
16.2.1 手动复制导入子项目
16.2.2 通过git pull -s subtree导入子项目
16.2.3 将更改提交到上游
16.3 自动化解决方案:使用自定义脚本检出子项目
16.4 原生解决方案:gitlink和git submodule
16.4.1 gitlink
16.4.2 git submodule命令
18 结合SVN版本库使用Git
18.1 例子:对单一分支的浅克隆
18.1.1 在Git中进行修改
18.1.2 在提交前进行抓取操作
18.1.3 通过git svn rebase提交
18.2 在git svn中使用推送、拉取、分支和合并
18.2.1 直接使用提交ID
18.2.2 克隆所有分支
18.2.3 分享版本库
18.2.4 合并回SVN
18.3 在和SVN一起使用时的一些注意事项
18.3.1 svn:ignore与.gitignore
18.3.2 重建git-svn的缓存
19 高级操作
19.1 使用git filter-branch
19.1.1 使用git filter-branch的例子
19.1.2 filter-branch的诱惑
19.2 我如何学会喜欢上git rev-list
19.2.1 基于日期的检出
19.2.2 获取文件的旧版本
19.3 数据块的交互式暂存
19.4 恢复遗失的提交
19.4.1 git fsck命令
19.4.2 重新连接遗失的提交
10 更改提交
10.1 关于修改历史记录的注意事项
10.2 使用git reset
10.3 使用git cherry-pick
10.4 使用git revert
10.5 reset、revert和checkout
10.6 修改最新提交
10.7 变基提交
10.7.1 使用git rebase -i
10.7.2 变基与合并