作者:empty 页数:228 出版社:empty |
版本控制是管理信息修改的艺术,它一直是程序员最重要的工具,程序员经常会花时间作出小的修改,然后又在某一天取消了这些修改,想象一下一个开发者并行工作的团队-或许是同时工作在同一个文件!-你就会明白为什么一个好的系统需要管理潜在的混乱,TortoiseSVN是一个Windows下的版本控制系统Apache Subversion的客户端工具,就是.P.Fois esN常年管理文件和目录、文件存储十一个中央版本库中.成本库就像一个常见的文件服务器,除了它保存你对文件和目录所有的改变.这一特性使得你可以恢复文件的旧版本并查看历史-谁在什么时间如何进行的修改, 这就是为什么很多人认为Subversion和版本控制系统是一种“时间机某些版木控制系统也是软件配置管理(SCM) 系统, 这种系统经过精巧的设计, 专门用来管理源代码树,并且具备许多与软件开发有关的特性比如,对编程语言的支持,或者提供程序构建工具,不过Subversion并不是这样的系统:它是一个通用系统, 可以管理任何类型的文作集, 包括源代码.是什么让TortoiseSVN成为一个好的Subversion客户端?下面是一个简短的特性列表,外壳集成TortoiseSVN无髓地整合进Windows的外壳(例如资源管理器) 。这意味着你可以继续使用已经熟悉的工具,而且当需要版本控制功能时你不用切换到不同的应用程序。而且你并没有被限制在Windows资源管理器中:TortoiseSVN的右键菜单可以在很多其它文件管理器中以及标准Windows程序的文件/打开对话框中被调出。不过, 你应该记住TortoiseSVN是专门作为Windows资源管理器的扩展进行开发的。因此, 有可能在其它程序中整合的不那么完整, 例如重载图标可能不显示
重载图标每个版本控制的文件和目录的状态使用小的重载图标表示,可以让你立刻看出工作副本的状态,图形用户界面当你列出文件或文件夹的更改时,你可以点击任意版本查看提交注释,也可以看到更改过的文件列表一只要双击文件就可以查看更改内容。提交对话框列出了木次提交将要包括的条目,每一个条目有一个复选框,所以你可以选择包括哪些条甘,未版本控制的文作也会被列出,以防你忘记添加新文件.Subversion命令的简便访问所有的Subversion命令存在于资源管理器的右键菜单, TortoiseSVN在那里添加子菜单,因为TortoiseSVN是一个Subversion客户端, 我们也很愿意为你展示一些Su by ersion本身的特性:目录版本控制CVS只能迫踪单个文件的历史, 但是Subversion实现了一个“虚拟”文件系统, 可以追踪整个目录树的修改,文件和日录都是版本控制的,结果就是可以在客户端对文件和日录执行移动和复制命原子提交提交要么完全进入版本库,要么一点都没有,这允许开发者以一个逻辑块提交修改,
版本控制的元数据每个文件和自录都有一组附加的“属性”,你可以发明和保存任意的键/值对,属性是版本控制的,就像文件内容,可选的网络层Subversion在版本库访问方面有一个抽象概念, 利于人们去实现新的网络机制, Subversion的“高级”服务器是Apache网络服务器的一个模块, 使用H TIP~的变种协议WebDAV/DeltaV通讯, 这给了Subversion在稳定性和交互性方面很大的好处, 可以直接使用服务器的特性, 例如认证、授权、传输压缩和版木库浏览等等, 也有一个轻型的, 单独运行的Subversion服务器, 这个服务器使用自己的协议, 可以轻松的用SSH封装。一致的数据处理Subversion使用二进制文件差异算法展现文件的区别,对于文本(人类可读》和二进制(人类不可读)文件具备一致的操作方式,两种类型的文件都压缩存放在版本库中,差异在网络上双向传递。高效的分支和标签分支与标签的代价不与工程的大小成比例, Subversion建立分支与标签时只是复制项目,使用了一种类似于硬链接的机制,因而这类操作通常只会花费很少并且相对固定的时间,以及很小的版本库空间,
TortoiseSVN是一个基于GNU通用公共许可协议(GPL) 开发的开源软件, 它可以免费下载和使用, 无论是个人或是商业目的,并且没有安装数量的限制,尽管很多用户只下载安装程序,但是你有这对这个项目的源码的所有阅读权限。你可以通过这个链接来访问源代码:https://sourceforge.net/p/tortoisesvn/code/HEAD/tree/,当前开发中的最新版本位于/trunk/, 而发布版本位于/tags/,TortoiseSVN和Subversion均由参与项目工作的社区人员开发。他们来自于遍布全球的各个国家, 一起致力于创造伟大的软件,
2002年, Tin Kenp发现Subversion是一个非常好的版本管理系统, 但是缺乏一个好的图形界面客户端程序, 做一个与Windows外壳整合的Subversion客户端程序的想法是受一个叫TortoiseCVS的CVS客户程序所启发的, Tin研究了TortoiseCVS的源码并以此为TortoiseSVN的基础。他开始运作这个项日, 注册了域名to r to is csvn.org并且将源码放在了网上,就在同时, Stefan Kung正在寻找一个好用的并且免费的版本控制系统。他找到了Subversion和TortoiseSVN的源码。因为TortoiseSVN还不能使用, 他加入了项目并开始编码, 很快, 他就重写了现有的大部分代码并开始添加命令和功能,到了某个时段,最初的代码已经都被改写了,由于Subversion变得越来越稳定, 它吸引了越来越多用户, 他们同时也开始使用TortoiseSVN作为Subversion的客户端程序。用户数量快速增长(并且每天还在增长) 。这时候, Lubbe On ken提出帮助项目提供精美的图标和TortoiseSVN的标志, 现在他负责照看网站和管理多语言翻译,随着时间推移, 其他的版本控制系统都有着自己的Tortoise客户端,这导致了在资源管理器中图标重载的问题; 这些图标重载有着数量的限制, 仅一个Tortoise客户端也能轻易超过那个限制。因而Stefan Kung使用了Tortoise图标重载组件使得所有Tortoise客户端可以使用相同的图标重载, 现在所有的开源Tortoise客户端甚至一些非Tortoise客户端也能使用分享的组件,
前言
Stefan Kung
Lubbe n ken
Simn Large
什么是T rt1seSVN?
TrtiseSVN的特性,
许可协议.
开发.i.
安装T rDI AS WW
T rtl sesw的历史
4.2.致谢.
5.阅读指南.-.-
6.本文使用的术语.
1.开始
1.1.1.系统要求
1.1.2.安装.
基本概念.
开始试用
1.3.1.创建版本库
1.3.2.导入项目
1.3.3.检出工作副本
1.3.4.进行修改
1.3.5.添加更多的文件
1.3.6.查看项目历史
1.3.7.撤消更改
1.4.继续前进
2.基本版本控制概念
2.1.版本库
2.2.版本模型
2.3.Subversin实战.
2.2.1.文件共享的问题.
2.2.2.锁定-修改-解锁方案
2.2.3.复制-修改-合并方案
2.2.4.Subversin怎么做?
2.3.1.工作副本
232版本库的URL.
2.3.3.修订版本
2.3.4.工作刚本怎样跟踪版本库
2.4.捕要.
3.版本库
3.1.创建版本库
11使用命令行工具创建版本库
13本地访问版本库使用TrtiseSVN创建版本库
314动问网络共享被盘上的版本库
3.1.5.版本库布局.
版本库备份
3.3.服务器端钩子脚本.
3.4.检出链接
3.5.访问版本库.
日常使用指南
4.1.基本特性
4.1.1.图标重载
4.1.2.石键菜单石键菜单.
4.1.3.拖放.
4.1.4常用快捷方式.
4.1.5.认证
4.1.6.最大化窗.
4.2.3.专用文件.
4.3.检出工作副本.
4.3.1.检出深度
将你的修改提交到版本库
4.4.1.提交对话框.
4.4.2.修改列表.
4.4.5.提交日志信息.
4.4.6.提交进程.
从提交列表中排除项目
图标重载.
详细状态
本地与远程状态
查看差别.
行结束符和空白选项
比较文件夹.
使用Trtise i Diff进行比较的图像
比较ffice文档.
合并指定版本范围
合并两个不同的目录树
锁定在Sub verin中是如何工作的
版本图节点.
更改视图,,
使用图.
已保存数据的设置.
凡志缓存
客户端钩子脚本
用来白别人的修改更新你的工作副本
4.6.解决冲突
4.6.1.文件冲突
4.6.2.属性冲突
4.6.3.树冲突.
4.7.获得状态信息
4.7.4.修改列表.
4.9.Shelving-.
4.10.版本日志对话框
4.10.1.调用版本甘志对话柜
4.10.2.版本日志动作.
4.10.3.获得更多信息
4.10.4.获取更多的日志信息
4.10.5.当前工作副本的版本
4.10.6.合并跟踪特性.
4.10.7.修改日志消息和作者
4.10.8.过滤开志信息
4.10.9.统计信息.
4.10.10.离线方式
4.10.11.刷新视图
4.11.查看差异.
4.18.项目设置.
4.11.1.文件差异
4.19.1.外部文件夹.
4.19.2.外部文件.
4.20.3.检出或者切换.
4.21.3.合并选项
4.21.4.预览合并结果.
4.21.5.合并跟踪.
4.22.1.定在Sub veri
4.22.2.取得锁定.
4.22.3.释放锁定.
4.22.4.检查镇定状态.
4.22.5.让非锁定的文件
4.22.6.镇定钩子脚本.
4.23.1.创建一个补丁文件
4.23.2.应用一个补丁文件
4.24.1.追溯文件.
4.24.2.追溯不同点
4.26.4.刷新视图
4.29.1.在志消息中增加问题号
4.29.2.从问题跟踪器中获取信息
4.31.1.常规设置
4.31.2.版本图设置
4.31.3.图标叠加设置,
4.31.4.网络设置,
4.31.5.外部程序设置
4.31.9.Trtise Blame的设置
4.31.10.Trtise UDiff Settings.
4.31.11.正在导出TSVN设置.
4.11.6.其他的比较/合井工具
添加新文件和目录,
复制/移动/重命名文件和文件夹
忽略文件和目录.
4.14.1.忽酯列表中的模式匹配
删除、移动和改名.
4.15.1.正在删除文件/文件夹
4.15.2.移动文件和文件夹
4.15.3.处理文件名称大小写冲突
4.15.4.修复文件改名,
4.15.5.删除米版本控制的文件
撤消更改.
清理.
4.18.1.Subversin属性-
4.18.2.TrtiseSVN项目属性.
4.18.3.属性编辑器.
4.19.外部条目
4.19.3.Creating exter hals via drag and drp
4.20.分支/标记
1.创建一个分支或标记.创建分支或标记的其他方法
4.21.合井
4.26.5.修剪树结构
4.31.12.高级设置.
4.21.6.Handling Cnflicts after Merge
4.21.7.特性分支维护.
4.22.锁
4.23.创建并应用补丁
4.24.谁修改了哪一行?
4.25.版本库润览器.
4.26.版本分支图
4.27.导出一个Subversin工作副本
4.27.1.从版本控制里移除别除工作副本
4.28.重新定位工作副本.
4.29.与BUG跟踪系统/问题跟踪集成.
4.30, 与基于WEB的版本库浏览器集成
4.31.TrtiseSVN的设置.
5.2.Mnitr dialg.
5.2.1.Main peratins
6.1.Sub WC Rey命令行
6.2.关键字替换.
6.3.关键字例子.
7.1.命名规范.
7.3.I Bugtraq Prvider 2接
A.常见问题(FAQ) .
B.如何实现.
c.Useful Tips Fr Administratrs
I Bug trag Prvider接
B.1.一次移动或复制多个文件
B.2.强制用户写日志.
B.2.1.服务器端的钩子脚本(Hk-script)
B.2.2.工程(Prject) 属性.
B.3.从版本库里更新选定的文件到本地.
B.4.Rllback(Und) revisins in the repsitry
B.5.Cmpare tw revisins f a file r flder
B.6.
B.4.1.使用版本志对话柜
B.4.2.使用合并对话框.
B.4.3.使用svn dump filter.
包含一个普通的子项目
B.6.1.使用svn:externals.
B.6.2.使用嵌套工作副本
B.6.3.使用相对位置.
B.6.4.增加此项目到版本库
B.7.创建到版本库的快捷方式
B.8.忽略已经版本控制的文件
B.9.从工作副本删除版本信息
B.10.利除工作副木.
C.1.通过组策略部署TrtiseSVN
C.2.重定向升级检查.
D.TrtiseSVN操作,
0.1.
E.命令行交叉索引
设置SVN ASP_DT_NET_HACK环境变量
禁用上下文菜单.
Trtises vw命令.
D.2.Tsvn cad URL handler
D.3.Trtise I Diff命令.
D.4.Trtise l Diff Cut and s
约定和基本规则
F.实现细节.
TrtiseSVN命令
E.2.1.检出.
E.2.2更新
E.2.3.更新到版本
E.2.4.提交
E.2.5.差异
E.2.6.显示日志
E.2.7.检查修改,
E.2.8.版本图.
E.2.9.版本库浏览器
E.2.10.
E.2.11.已解决
E.2.12.改名
E.2.13.删除
E.2.14.恢复
E.2.15.清理
E.2.16.获得
E.2.17.
E.2.20.
G.1.语言包.-.-
G.2.拼写检查器.
编辑冲突.
恢复.
获得镇.
释放锁
分支/标记.
切换
合
:重新定位
2227
E.2.28.
E.2.29.应用补丁(Apply Patch)
F.1.图标重载
G:语言包和拼写检查器.
术语表.
索引.
在当前位置创建版本库
添加
导入.
追溯
加入忽略列表
创建补丁
插图清单
.
未版本控制文件夹的TrtiseSVN菜单.
号入对话框
文件差异查看器.
日志对话框
一个典型的客户/服务器系统.
需整避免的方
复制-修改-合并方案
复制-修改-合并方案(续).
版本库的文件系统.
版本库
未版本控制文件夹的TrtiseSVN菜单.
显示重载图标的资源管理器
12.版本控制下一个目录的右键菜单
4.3.
在一个版本控制的文件夹下资源管理器文件菜单中的快捷方式
4.4.版本控制下的一个目录的右键拖拽菜单.
4.5.认证对话框.
4.6.导入对话框
4.7.检出对话框
4.8.提交对话框
4.9.提交对话框的拼写检查器.
4.10.显示提交进度的进度对话框
4.11.已经完成更新的进度对话框-.
4.12.显示承载图标的资源管理器.
4.13.资源管理器风性页, Subversin页面.
4.14.检查修改.
4.15.带有修改列表的提交对话框.
4.16.She Ive dialg.
4.17.Un shelve dialg.
4.18.版本日志对话框.
4.19.版本志对话框的顶部面板的右键菜单.
4.20.The Cde Cllabratr Settings Dialg.
.选中两个版本的顶部面板的右键菜单.日志对话框的底部面板的右键菜单.
.
The Lg Dialg Bttm Pau e with CntextMenu Then Multiple Files Selected.
日志对话框显示合并跟踪版本.
1.作者提交次数统计柱状图.-.
4.26作者提交次数统计饼图.
1.按日期提交统计图.
4.28要离线对话框
4.29.比较修订版本对话框.
4.30差异察看器截图.
4.31.未受版木控制的文件之资源管理器上下文莱单.
4.32.未受版本控制的文件之资源管理器上下文菜单
4.33.版本控制文件的菜单浏览.
4.34.恢复对话框.
4.35.The Clean wp dialg.
4.36.Subversin属性页.
4.37.增加属性.
438.Prperty dialg fr hk seri pts.
4.39.Prperty dialg blean user types.
4.40.Prperty dialg state user types.
4.41.Prperty dialg single-line user types.
4.42.Prperty dialg multi-line user types.
4.43.svn:externals属性页.
4.44.svn:keywrds属性页.
4.45.svn:el-style属性页.
4.46.tsvn:bugtraq属性页
4.47.志信息屑性页的大小..
4.48.语言属性页.-
4.49.svn:mime-type属性页.
4.50,svn:needs-lck属性页.
4.51.svn:executable属性页.
4.52.Prperty dialg merge lgues sage templates
4.53.分支/标记对话框.
4.54.切换对话框.
4.55.合并向导-选择版本范选择版本范围.
4.56.合并向导-树合并.
4.57.The Merge Cnf liet Dialg.
4.58.The Merge Tree Cnflict Dialg-
4.59.The Merge-All Dialg.
4.60.锁定对话框.
4.61.检查修改对话框.
4.62.创建补丁的对话框.
4.63.评注/追溯对话框.+.4+
4.64.Trtise Blane.
4.65.版本库浏览器.
4.66.一个版本分支
167.从U导出对话
4.68重定位对话框.
4.69.The Bugtraq Prperties Dialg
4.70.问题跟踪查询对话柜示例
4.71.设置对话框,常规设置页面
4.72.设置对话框,右键菜单页面
4.73.设置对话框,对话框页面
4.74.设置对话框,对话框二页面.
4.75.The Settings Dialg, Dialg s 3 Page.
4.76.设置对话框,颜色页面.
4.77.设置对话框,版本图页面.
4.78.设置对话框,版本图颜色页面.
4.79.设置对话框,图标覆盖页面.
4.80.设置对话框,图标集页面.
4.81.设置对话低.图标处理器页面
4.82.设置对话框,网络设置页面.
4.83.设置对话框,差异查看页面.
4.84.高级差异比较设置/高级合并设置的对话框
4.85,设置对话框,已保存数据设置页面.
4.86.设置对话框,志缓存页面.
4.87.设置对话框,日志缓存统计.
4.88.设置对话框,钩子脚本页.
4.89,设置对话框,配置钩子脚本页面.
4.90.设置对话框,问题跟踪集成页.
4.91.设置对话框, Trtise B late页面
4.92.The Settings Dialg, Trtise UDiff Page
4.93.The Settings Dialg, Syne Page.
4.94.Taskbar with default gruping.
4.95.Task har with repsitry gruping.
4.96.Taskbar with repsitry gruping.
4.97.Taskbar gruping with repsitry clr verlays.
5.1.The edit prject dialg f the prject mnitr.
.The main dialg f the prject mnitr.
C.1.The cmmit dialg, shving the upgrade nti