本文档旨在描述Subversion 1.4。如果我们强烈建议您运行Subversion的更新版本你访问的网址:http://www.svnbook.com/并查阅这本书的版本适合您的Subversion版本。

带Subversion的版本控制

对于Subversion 1.4

(摘自r2866)

柯林斯·苏斯曼

布莱恩·W·。 菲茨帕特里克

C.迈克尔 皮拉托

本作品根据创意公用署名许可证。要查看此许可证的副本,参观http://creativecommons.org/licenses/by/2.0/或致函内森·阿伯特路559号创意共享区,美国加利福尼亚州斯坦福市,邮编:94305。

(待定)


目录

前言
前言
观众
如何阅读这本书
本书中使用的惯例
印刷惯例
图标
本书的组织结构
这本书是免费的
致谢
本·科林斯·苏斯曼
Brian W.Fitzpatrick的来信
来自C.Michael Pilato
什么是颠覆?
Subversion的历史记录
Subversion的功能
Subversion的体系结构
Subversion的组件
1.基本概念
知识库
版本模型
文件共享问题
锁定-修改-解除锁定解决方案
Copy-Modify-Merge解决方案
操作中的颠覆
Subversion存储库URL
工作副本
修订
工作副本如何跟踪存储库
混合修订工作副本
更新和提交是分开的
混合修订是正常的
混合修订很有用
混合修订有局限性
总结
2.基本用法
救命!
将数据放入存储库
svn导入
建议的存储库布局
初始结账
禁用密码缓存
以不同用户身份进行身份验证
基本工作周期
更新工作副本
对工作副本进行更改
检查您的更改
查看更改的概述
检查本地修改的详细信息
撤消工作更改
解决冲突(合并其他人的更改)
手动合并冲突
将文件复制到工作文件
Punting:使用svn还原
提交您的更改
检查历史记录
生成历史更改列表
检查历史变化的细节
检查本地更改
比较工作副本与存储库
比较存储库与存储库
浏览存储库
svn猫
svn列表
获取较旧的存储库快照
有时你只需要清理一下
总结
3.高级主题
修订说明
修订关键字
修订日期
属性
为什么选择属性?
操作属性
属性和Subversion工作流
自动属性设置
文件可移植性
文件内容类型
文件可执行性
行末字符序列
忽略未版本化的项目
关键字替换
锁定
创建锁
发现锁
打破和窃取锁
锁定通信
外部定义
Peg和操作修订
网络模型
请求和响应
客户端凭据缓存
4.分支与合并
什么是分行?
使用分支
创建分支
与分行合作
分支机构背后的关键概念
在分支之间复制更改
复制特定更改
合并背后的关键概念
合并的最佳实践
手动跟踪合并
预览合并
合并冲突
注意或忽视祖先
合并和移动
常见使用案例
将整个分支合并到另一个分支
撤消更改
重新更正已删除的邮件
常见的分支模式
发布分支
要素分支
横向分支
标签
创建简单标记
创建复杂标记
分行维护
仓库的规划
数据生存期
供应商分支机构
供应商总分公司管理程序
svn_load_dirs.pl文件
总结
5.存储库管理
Subversion存储库,已定义
存储库部署策略
规划存储库组织
决定存储库的宿主位置和方式
选择数据存储
伯克利数据库
FSFS公司
创建和配置存储库
创建存储库
实施存储库挂钩
Berkeley数据库配置
存储库维护
管理员工具包
svnadmin公司
服务器日志
svndumpfilter(svndump过滤器)
svnsync(服务器同步)
伯克利数据库实用程序
提交日志消息更正
管理磁盘空间
Subversion如何节省磁盘空间
删除死事务
清除未使用的Berkeley DB日志文件
伯克利数据库恢复
将存储库数据迁移到其他位置
筛选存储库历史记录
存储库复制
存储库备份
总结
6.服务器配置
概述
选择服务器配置
这个svnserve服务器服务器
服务器通过SSH
Apache HTTP服务器
建议
svnserve,自定义服务器
调用服务器
svnserve服务器作为守护程序
svnserve服务器通过内特(inetd)
svnserve服务器在隧道上方
svnserve服务器作为Windows服务
内置身份验证和授权
创建“用户”文件和领域
设置访问控制
通过SSH的隧道
SSH配置技巧
初始设置
控制调用的命令
httpd,Apache HTTP服务器
前提条件
Apache基本配置
身份验证选项
基本HTTP身份验证
SSL证书管理
授权选项
一揽子访问控制
目录访问控制
禁用基于路径的检查
额外的好处
存储库浏览
Apache日志记录
其他功能
基于路径的授权
支持多种存储库访问方法
7.自定义Subversion体验
运行时配置区
配置区域布局
配置和Windows注册表
配置选项
服务器
配置
本地化
了解区域设置
Subversion对区域设置的使用
使用外部差异工具
外部差异
外部差异3
8.嵌入子版本
分层图书馆设计
库层
存储库访问层
客户端层
在工作副本管理区域内
条目文件
Pristine副本和属性文件
使用API
Apache便携式运行库
URL和路径要求
使用C和C以外的语言++
代码示例
9.颠覆完整参考
Subversion命令行客户端:svn公司
svn公司选项
svn公司子命令
svn添加
svn指责
svn猫
svn校验
svn清理
svn提交
svn副本
svn删除
svn差异
svn导出
svn帮助
svn导入
获取当前检出的版本信息
svn列表
svn锁
svn日志
svn合并
svn mkdir
svn移动
svn推进器
svn属性编辑
svn道具
svn属性列表
svn道具集
svn已解决
svn还原
svn状态
svn交换机
svn解锁
svn更新
svnadmin公司
svnadmin公司选项
svnadmin公司子命令
svnadmin创建
svnadmin删除
svnadmin转储
svnadmin帮助
svnadmin热拷贝
svnadmin列表数据库日志
svnadmin列表-使用的博客
svnadmin负载
svnadmin lslocks
svnadmin-lstxns公司
svnadmin恢复
svnadmin rmlocks
svnadmin rmtxns
svnadmin设置日志
svnadmin验证
svnlook公司
svnlook公司选项
svnlook公司子命令
svnlook作者
svnlook猫
svnlook已更改
svnlook日期
svnlook差异
svnlook目录已更改
svnlook帮助
svnlook历史记录
svnlook信息
svnlook锁
svnlook日志
svnlook推进器
svnlook属性列表
svnlook树
svnlook uuid
svnlook最年轻
svnsync(服务器同步)
svnsync(服务器同步)选项
svnsync(服务器同步)子命令
svnsync副本复制
svnsync初始化
svnsync同步
svnserve服务器
svnserve服务器选项
svnversion版本
转换
修改数据
修改数据配置指令
Subversion属性
版本化属性
未版本化的属性
存储库挂钩
启动-提交
预先提交
提交后
revprop-change前
revprop更改后
预先锁定
后锁
预先解锁
解锁后
A.Subversion快速启动指南
安装Subversion
高速教程
B.CVS用户的颠覆
修订号现在不同了
目录版本
更多断开连接的操作
状态和更新之间的区别
状态
更新
分支和标记
原数据属性
冲突解决
二进制文件和翻译
版本化模块
身份验证
将存储库从CVS转换为Subversion
C.WebDAV和自动版本控制
什么是WebDAV?
自动版本控制
客户端互操作性
独立WebDAV应用程序
Microsoft Office、Dreamweaver、Photoshop
DAV探险家尸体
File-explorer WebDAV扩展
Microsoft Web文件夹
Nautilus,Konqueror公司
WebDAV文件系统实现
WebDrive、NetDrive
Mac OS X
Linux davfs2
D.第三方工具
E.版权
索引

图的列表

1Subversion的体系结构
1.1.典型的客户机/服务器系统
1.2.要避免的问题
1.3.锁定-修改-解锁解决方案
1.4.复制-修改-大型解决方案
1.5.copy-modify-merge解决方案(续)
1.6.存储库的文件系统
1.7.存储库
4.1.发展分支
4.2。正在启动存储库布局
4.3.具有新副本的存储库
4.4.一个文件历史的分支
8.1.二维文件和目录
8.2.版本时间第三维度!

表格列表

1.1.存储库访问URL
5.1.存储库数据存储比较
6.1.Subversion Server选项的比较
C.1、。通用WebDAV客户端

示例列表

5.1.txn-info.sh(报告未完成交易)
5.2.镜像存储库的pre-revpro更改挂钩脚本
5.3.镜像存储库的start-commit钩子脚本
6.1.匿名访问的示例配置。
6.2.经过身份验证的访问的示例配置。
6.3.混合的示例配置身份验证/匿名访问。
6.4.完全禁用路径检查
7.1.示例注册条目(.reg)文件。
7.2.diffwrap.sh格式
7.3.差异包装.bat
7.4.差异3wrap.sh
7.5.差异3wrap.bat
8.1.使用存储库层
8.2.将存储库层与Python一起使用
8.3.Python状态爬虫