快捷登录,享 免费下载
首页 > 软件列表 > TortoiseSVN

基本简介

版本控制是管理信息修改的艺术,它一直是程序员最重要的工具,程序员经常会花时间作出小的修改,然后又在某一天取消了这些修改,想象一下一个开发者并行工作的团队-或许是同时工作在同一个文件!-你就会明白为什么一个好的系统需要管理潜在的混乱。

某些版本控制系统也是软件配置管理(SCM)系统,这种系统经过精巧的设计,专门用来管理源代码树,并且具备许多与软件开发有关的特性-比如,对编程语言的支持,或者提供程序构建工具。不过Subversion并不是这样的系统;它是一个通用系统,可以管理任何类型的文件集,包括源代码。

(概述内容来源:

历史发展

在2002年,TimKemp发现Subversion是一个很好的版本控制系统,但是没有好的图形化客户端,创建一个作为Windows外壳集成的Subversion客户端的创意来自TortoiseCVS,一个非常类似的CVS客户端。

Tim学习了TortoiseCVS的源代码,将其作为TortoiseSVN的基础,然后开始这个项目,注册了域名tortoisesvn,并将源代码提交到网上。此时StefanKüng正在寻找一个好的免费版本控制系统,他发现了Subversion和TortoiseSVN,由于TortoiseSVN还不能够使用,他加入了这个项目并开始编程。很快他便重写了大多数代码,并且开始添加命令和特性,此时,最初的代码都已经不复存在了。

随着Subversion越来越稳定,吸引了越来越多的用户开始使用TortoiseSVN作为他们的Subversion客户端。用户群增长迅速(每天都持续增长)。LübbeOnken提供了许多漂亮图标和TortoiseSVN的logo,细心照料网站并且管理翻译。

2013年6月13日,Wandisco收购TortoiseSVN[dot]Net,TortoiseSVNleader-StefanKüng加入Wandisco,有了Apachesubversion领导开发者Wandisco的支持,TortoiseSVN将会有更多的改进。

主要特性

是什么让TortoiseSVN成为一个好的Subversion客户端?下面是一个简短的特性列表。

可选的网络层

Subversion在版本库访问方面有一个抽象概念,利于人们去实现新的网络机制,Subversion的“高级”服务器是Apache网络服务器的一个模块,使用HTTP的变种协议WebDAV/DeltaV通讯,这给了Subversion在稳定性和交互性方面很大的好处,可以直接使用服务器的特性,例如认证、授权、传输压缩和版本库浏览等等。也有一个轻型的,单独运行的Subversion服务器,这个服务器使用自己的协议,可以轻松的用SSH封装。

一致的数据处理

Subversion使用二进制文件差异算法展现文件的区别,对于文本(人类可读)和二进制(人类不可读)文件具备一致的操作方式,两种类型的文件都压缩存放在版本库中,差异在网络上双向传递。

高效的分支和标签

分支与标签的代价不与工程的大小成比例,Subversion建立分支与标签时只是复制项目,使用了一种类似于硬链接的机制,因而这类操作通常只会花费很少并且相对固定的时间,以及很小的版本库空间。

良好的维护能力

Subversion没有历史负担,它由一系列良好的共享C库实现,具有定义良好的API,这使Subversion非常容易维护,可以轻易的被其他语言和程序使用。

外壳集成

TortoiseSVN与Windows外壳(例如资源管理器)无缝集成,你可以保持在熟悉的工具上工作,不需要在每次使用版本控制功能时切换应用程序。

并且你不一定必须使用Windows资源管理器,TortoiseSVN的右键菜单可以工作在其他文件管理器,以及文件/打开对话框等标准的Windows应用程序中。你必须牢记,TortoiseSVN是有意作为Windows资源管理器的扩展开发,因此在其他程序可能集成的并不完整,例如重载图标可能不会显示。

重载图标

每个版本控制的文件和目录的状态使用小的重载图标表示,可以让你立刻看出工作副本的状态。

简便访问

Subversion命令的简便访问

所有的Subversion命令存在于资源管理器的右键菜单,TortoiseSVN在那里添加子菜单。

因为TortoiseSVN是一个Subversion客户端,我们也很愿意为你展示一些Subversion本身的特性。

目录版本控制

CVS只能追踪单个文件的历史,但是Subversion实现了一个“虚拟”文件系统,可以追踪整个目录树的修改,文件和目录都是版本控制的,结果就是可以在客户端对文件和目录执行移动和复制命令。

原子提交

提交要么完全进入版本库,要么一点都没有,这允许开发者以一个逻辑块提交修改。

版本控制的元数据

每个文件和目录都有一组附加的“属性”,你可以发明和保存任意的键/值对,属性是版本控制的,就像文件内容。

安装介绍

语言包

TortoiseSVN的界面已经翻译成了许多种语言,所以你可以下载符合你要求的语言包。你可以在我们的翻译状态页里看到语言包。如果没有你需要的,为什么不加入我们的团队并且提交你的翻译呢?-)

每一种语言包都是一个.exe安装程序,只要根据向导运行安装程序,当你下一次启动程序时,翻译就会生效。

拼写检查器

TortoiseSVN包括了一个拼写检查器,可以检查你的提交日志信息,当你的项目语言不是你的本地语言时尤其有用,拼写检查器使用OpenOffice和Mozilla相同的词典。

安装程序会自动增加了美国和英国英语dictionaries.If你想其他语言,最简单的方法是简单地安装一个TortoiseSVN的语言packs.This将安装合适的词典文件以及本地用户theTortoiseSVNinterface.Next时间你开始,字典将可用。

或者你也可以自己安装词典。如果你安装了OpenOffice或Mozilla,你可以复制这些词典,位于那些应用的安装目录。否则,你需要从网络上下载必要的词典文件。

一旦你得到了词典文件,你可能需要重命名文件,这样文件名只包含位置信息,例如:

en_US.aff

en_US.dic

然后把它们复制到TortoiseSVN安装目录的bin子目录,通常情况下,可能是在C:\ProgramFiles\TortoiseSVN\bin。如果你不希望弄乱bin子目录,你可以将拼写检查文件放置在C:\ProgramFiles\TortoiseSVN\Languages,如果那个目录不存在,你可以自己创建,当你下次启动TortoiseSVN时,就可以使用拼写检查器。

如果你安装了多个词典,TortoiseSVN使用下面的规则选择一个。

检查tsvn:projectlanguage设置,关于设置项目属性可以参考“项目设置”一节。

如果没有设置项目语言,或者那个语言没有安装,尝试使用对应Windows区域信息的语言。

如果精确的Windows区域信息不起作用,可以试一下“基础”语言,例如将de_CH(Swiss-German)修改为de_DE(German)。

使用技巧

检出代码

初次使用TortoiseSVN的时候,你需要将服务器的代码下载到本地,这就是SVNCheckout(SVN检出)。检出的步骤如下

第一步,创建一个新文件夹作为本地工作目录(Workingdirectory),可以使用应用名为文件夹名。如,为我的应用vyes创建本地工作目录。

第二步,从SVN仓库检出(checkout)一个应用的全部版本代码,右键–>点击“SVNCheckout”

在弹出页面中填写仓库URL即可,其它默认参数即可

Reversion处,“HEADrevision”是指最新版,也可以指定Revision为任意一个版本。

点击“OK”,出现下载界面

如果一切顺利,vyes应用所有版本代码将会全部出现在刚刚创建的vyes文件夹下文件夹,1是指vyes的第一个版本

修改并提交代码

在本地使用你喜欢的编辑器,编辑任意文件,保存后该文件图标将会出现红色感叹号,表示这个文件修改过,没有提交,所示:

刚刚修改过的global.css变色了。下面需要提交(commit)最近的更新。在global.css上击右键,出现菜单,选择“SVNcommit”:

然后填写关于本次更新的日志(logmessage),这是必填项,否则commit会失败。

当您看到所示,表明刚才的修改已经成功提交,并且前该vyes项目的SVN版本号加1,变成91了。

新增文件、文件夹

在SVN工作目录下,对于文件修改,完成后只需要commit就ok了,但对于新增文件,或者从其它目录复制进来的文件或文件夹,需要在commit之前需要做一步add操作,即将文件或文件夹添加到svn工作目录中来,否则SVN客户端不认它。具体操作很简单

然后再所示,右键commit即可,commit之后,在浏览器上输入你的应用地址就能访问了。

版本发布

2012年01月16日,TortoiseSVN1.7.4发布。

2012年04月29日,TortoiseSVN1.7.6发布。

2012年06月08日,TortoiseSVN1.7.7发布,SVN客户端。

2012年08月16日,TortoiseSVN1.7.8发布。

2012年09月11日,TortoiseSVN1.7.9发布。

TortoiseSVN1.7.11发布

版本列表