Subversion 权威指南

针对 Subversion 1.6

(编译自 2011-03-20)

版 Second

Ben Collins-Sussman

Brian W. Fitzpatrick

C. Michael Pilato


法律通告

本书使用创作共用许可证。可以访问 http://creativecommons.org/licenses/by/2.0/ 或发送邮件到 Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA,以查看本许可证。

(TBA)


前言
序言
1. 读者
2. 怎样阅读本书
3. 本书约定
4. 本书的结构
5. 本书是免费的
6. 致谢
6.1. 来自 Ben Collins-Sussman
6.2. 来自 Brian W. Fitzpatrick
6.3. 来自 C. Michael Pilato
7. Subversion 是什么?
7.1. Subversion 是正确的工具吗?
7.2. Subversion 的历史
7.3. Subversion 的架构
7.4. Subversion 的组件
7.5. Subversion 有什么新东西?
1. 基本概念
1.1. 版本库
1.2. 版本模型
1.2.1. 文件共享的问题
1.2.2. “锁定-修改-解锁”方案
1.2.3. “拷贝-修改-合并”方案
1.3. Subversion 实践
1.3.1. Subversion 版本库的 URL
1.3.2. 工作副本
1.3.3. 修订版本
1.3.4. 工作副本怎样跟踪版本库
1.3.5. 混合修订版本的工作副本
1.4. 总结
2. 基本使用
2.1. 求助!
2.2. 导入数据到你的版本库
2.2.1. svn import
2.2.2. 推荐的版本库布局
2.3. 初始化检出
2.3.1. 禁用密码缓存
2.3.2. 认证为其它用户
2.4. 基本的工作循环
2.4.1. 更新你的工作副本
2.4.2. 修改你的工作副本
2.4.3. 检查你的修改
2.4.4. 取消本地修改
2.4.5. 解决冲突(合并别人的修改)
2.4.6. 提交你的修改
2.5. 检验历史
2.5.1. 产生历史修改列表
2.5.2. 检查历史修改详情
2.5.3. 浏览版本库
2.5.4. 获得旧的版本库快照
2.6. 有时你只需要清理
2.6.1. 处理你的工作副本
2.6.2. 从中断中恢复
2.7. 处理结构性冲突
2.7.1. 树冲突示例
2.8. 总结
3. 高级主题
3.1. 版本清单
3.1.1. 修订版本关键字
3.1.2. 版本日期
3.2. 属性
3.2.1. 为什么需要属性?
3.2.2. 操作属性
3.2.3. 属性和 Subversion 工作流程
3.2.4. 自动设置属性
3.3. 文件移植性
3.3.1. 文件内容类型
3.3.2. 文件的可执行性
3.3.3. 行结束字符序列
3.4. 忽略未版本控制的条目
3.5. 关键字替换
3.6. 稀疏目录
3.7. 锁定
3.7.1. 创建锁定
3.7.2. 发现锁定
3.7.3. 解除和偷窃锁定
3.7.4. 锁定交流
3.8. 外部定义
3.9. Peg 和实施修订版本
3.10. 修改列表
3.10.1. 创建和更新修改列表
3.10.2. 用修改列表作为操作过滤器
3.10.3. 修改列表的限制
3.11. 网络模型
3.11.1. 请求和响应
3.11.2. 客户端凭证缓存
3.12. 总结
4. 分支与合并
4.1. 什么是分支?
4.2. 使用分支
4.2.1. 创建分支
4.2.2. 在分支上工作
4.2.3. 分支背后的关键概念
4.3. 基本合并
4.3.1. 变更集
4.3.2. 保持分支同步
4.3.3. Reintegrating a Branch
4.3.4. 合并信息和预览
4.3.5. 取消修改
4.3.6. 找回删除的项目
4.4. 高级合并
4.4.1. 摘录合并
4.4.2. 合并的语法:完整的描述
4.4.3. 不使用合并信息的合并
4.4.4. 合并冲突
4.4.5. 阻塞修改
4.4.6. Keeping a reintegrated branch alive
4.4.7. 感知合并的日志和注解
4.4.8. 关注还是忽视祖先
4.4.9. 合并和移动
4.4.10. 阻塞不知道合并的客户端
4.4.11. 合并跟踪的最终信息
4.5. 使用分支
4.6. 标签
4.6.1. 建立简单标签
4.6.2. 建立复杂标签
4.7. 维护分支
4.7.1. 版本库布局
4.7.2. 数据的生命周期
4.8. 常用分支模式
4.8.1. 发布分支
4.8.2. 特性分支
4.9. 供方分支
4.9.1. 常规的供方分支管理过程
4.9.2. svn_load_dirs.pl
4.10. 总结
5. 版本库管理
5.1. Subversion 版本库的定义
5.2. 版本库开发策略
5.2.1. 规划你的版本库结构
5.2.2. 决定在哪里与如何部署你的版本库
5.2.3. 选择数据存储格式
5.3. 创建和配置你的版本库
5.3.1. 创建版本库
5.3.2. 实现版本库钩子
5.3.3. Berkeley DB 配置
5.3.4. FSFS 配置
5.4. 版本库维护
5.4.1. 管理员的工具箱
5.4.2. 修正提交消息
5.4.3. 管理磁盘空间
5.4.4. Berkeley DB 恢复
5.4.5. 版本库数据的移植
5.4.6. 过滤版本库历史
5.4.7. 版本库复制
5.4.8. 版本库备份
5.4.9. 管理版本库的 UUID
5.5. 移动和删除版本库
5.6. 总结
6. 服务配置
6.1. 概述
6.2. 选择一个服务器配置
6.2.1. svnserve 服务器
6.2.2. 穿越 SSH 隧道的 svnserve 服务器
6.2.3. Apache 的 HTTP 服务器
6.2.4. 推荐
6.3. svnserve - 定制的服务器
6.3.1. 调用服务器
6.3.2. 内置的认证和授权
6.3.3. 让 svnserve 使用 SASL
6.3.4. 穿越 SSH 隧道
6.3.5. SSH 配置技巧
6.4. httpd - Apache 的 HTTP 服务器
6.4.1. 先决条件
6.4.2. 基本的 Apache 配置
6.4.3. 认证选项
6.4.4. 授权选项
6.4.5. 额外的糖果
6.5. 基于路径的授权
6.6. 支持多种版本库访问方法
7. 定制你的 Subversion 体验
7.1. 运行配置区
7.1.1. 配置区布局
7.1.2. 配置和 Windows 注册表
7.1.3. 配置选项
7.2. 本地化
7.2.1. 理解区域设置
7.2.2. Subversion 对区域设置的使用
7.3. 使用外置编辑器
7.4. 使用外置比较与合并工具
7.4.1. 外置 diff
7.4.2. 外置 diff3
7.5. 总结
8. 嵌入 Subversion
8.1. 分层的库设计
8.1.1. 版本库层
8.1.2. 版本库访问层
8.1.3. 客户端层
8.2. 进入工作副本的管理区
8.2.1. 条目文件
8.2.2. 原始副本和属性文件
8.3. 使用 API
8.3.1. Apache 可移植运行库
8.3.2. URL 和路径需求
8.3.3. 使用 C 和 C++ 以外的语言
8.3.4. 代码样例
8.4. 总结
9. Subversion 完全参考
9.1. Subversion 命令行客户端:svn
9.1.1. svn 选项
9.1.2. svn 子命令
9.2. svnadmin
9.2.1. svnadmin 选项
9.2.2. svnadmin 子命令
9.3. svnlook
9.3.1. svnlook 选项
9.3.2. svnlook 子命令
9.4. svnsync
9.4.1. svnsync 选项
9.4.2. svnsync 子命令
9.5. svnserve
9.5.1. svnserve 选项
9.6. svndumpfilter
9.6.1. svndumpfilter 选项
9.6.2. svndumpfilter 子命令
9.7. svnversion
9.8. mod_dav_svn
9.9. mod_authz_svn
9.10. Subversion 属性
9.10.1. 版本控制的属性
9.10.2. 未版本控制的属性
9.11. 版本库钩子
A. Subversion 快速入门指南
A.1. 安装 Subversion
A.2. 快速指南
B. CVS 用户的 Subversion 指南
B.1. 版本号现在不同了
B.2. 目录的版本
B.3. 更多离线操作
B.4. 区分状态和更新
B.4.1. 状态
B.4.2. 更新
B.5. 分支和标签
B.6. 元数据属性
B.7. 解决冲突
B.8. 二进制文件和行结束标记转换
B.9. 版本化的模块
B.10. 认证
B.11. 迁移 CVS 版本库到 Subversion
C. WebDAV 和自动版本
C.1. 什么是 WebDAV?
C.2. 自动版本化
C.3. 客户端交互性
C.3.1. 独立的 WebDAV 应用程序
C.3.2. 文件浏览器的 WebDAV 扩展
C.3.3. WebDAV 的文件系统实现
D. 版权
索引
n
Next Page
p
Previos Page
h
Book Home
u
Go Up One Level
?
Press ? for Help
esc
Hide Help
Your Ad Here