现在的位置: 首页 > 自动控制 > 工业·编程 > 正文

TortoiseSVN:本地版本库搭建操作指南

2012-11-03 00:30 工业·编程 ⁄ 共 2678字 ⁄ 字号 暂无评论

    TortoiseSVN 是 Subversion 版本控制系统的一个免费开源客户端,可以超越时间的管理文件和目录。文件保存在中央版本库,除了能记住文件和目录的每次修改以外,版本库非常像普通的文件服务器。可以将文件恢复到过去的版本,并且可以通过检查历史知道数据做了哪些修改,谁做的修改。这就是为什么许多人将 Subversion 和版本控制系统看作一种“时间机器”。

》》》使用TortoiseSVN在源代码中嵌入作者或版本等信息

TortoiseSVN简史

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

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

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

TortoiseSVN特性

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

  外壳集成:TortoiseSVN 无缝地整合进 Windows 的外壳(例如资源管理器)。这意味着你可以继续使用已经熟悉的工具。而且当需要版本控制功能时你不用切换到不同的应用程序。而且你并没有被限制在 Windows 资源管理器中; TortoiseSVN 的右键菜单可以在很多其它文件管理器中以及标准 Windows 程序的 文件/打开 对话框中被调出。不过,你应该记住 TortoiseSVN 是专门作为 Windows 资源管理器的扩展进行开发的。因此,有可能在其它程序中整合的不那么完整,例如重载图标可能不显示。

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

  图形用户界面:当你列出文件或文件夹的更改时,你可以点击任意版本查看提交注释。也可以看到更改过的文件列表 - 只要双击文件就可以查看更改内容。提交对话框列出了本次提交将要包括的条目,每一个条目有一个复选框,所以你可以选择包括哪些条目。未版本控制的文件也会被列出,以防你忘记添加新文件。

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

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

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

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

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

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

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

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

TortoiseSVN下载与安装

    1、下载程序+语言包,务必注意程序和语言包的[大版本]要一致,否则不能汉化。
TortoiseSVN官网链接
    如:客户端为TortoiseSVN-1.7.10.23359-win32-svn-1.7.7.msi 语言包一定要是 LanguagePack_1.7.10.XXXX-win32-zh_CN.msi

    2、安装+汉化。安装记得无视重启提示,装完立马安装 官方汉化语言包,之后再重启。

    3、右键单击任何文件,选择 [TortoiseSVN]–[sitting]–language[中文],即可汉化OK。

TortoiseSVN本地版本库搭建

    1、安装TortoiseSVN之后需要创建本地的总版本库,即server,具体做法:新建一个文件夹,比如 D:\SVN\project 这个文件夹, 然后右键create repository here(在此创建版本库)

    2、在另外的工作目录,比如 D:\workdocument 这个文件夹,进入文件夹,在空白处右键 SVN checkout ,此时就会弹出填写URL的窗口。

    重点来了–版本库URL要这样填,比如:file:///D:/SVN/dot-a即建立了工作目录与server的关联,也就是这一步是区别与远程SVN之处

    3、然后呢,我们就可新建文件了,可以使代码、文档等等,这些完成之后呢,我们就可以右键add(TortoiseSVN自己定义的添加),下一次commit的时候就可以把这些新建、修改的文件都提交给server。无论你覆盖,删除,历史版本都会保证你随时可以回档到任何时刻。

    其它的,关于SVN的使用,自己慢慢感受吧

》》》程序员练级葵花宝典

给我留言

留言无头像?