明永成

导航

 

2011年3月22日

摘要: TortoiseSVN的设置 想知道不同的设置是干什么用的,你只需将鼠标指针在编辑框/选项框上停留一秒钟...一个帮助提示气泡就会弹出来。 常规设置 图 5.50. 设置对话框,常规设置页面 这个对话框允许你指定自己喜欢的语言,同时也可做那些与Subversion相关的特殊设置。 语言 选择你TSVN的用户界面语言。不然你还期望从这里得到啥别的? 每周自动检查新版本 如果检查过,TSVN将每周联系... 阅读全文
posted @ 2011-03-22 17:54 明永成 阅读(19849) 评论(0) 推荐(0)
 
摘要: 与基于 WEB 的版本库浏览器集成 有许多web为基础的版本库浏览器,例如ViewVC and WebSVN,TortoiseSVN提供了链接这些浏览器的方法。 You can integrate a repo viewer of your choice in TortoiseSVN. To do this, you have to define some properties which def... 阅读全文
posted @ 2011-03-22 17:52 明永成 阅读(253) 评论(0) 推荐(0)
 
摘要: 与 BUG 跟踪系统/问题跟踪集成 在软件开发中,修改依赖于一个bug或问题编号是很常见的。bug跟踪系统的用户(问题跟踪者)喜欢在问题跟踪中将Subversion的修改与一个指定编号联系起来。因此很多问题跟踪者提供了一个预提交钩子脚本,分析日志,查找提交相关的bug编号。这稍微有些不可靠,因为它依赖于用户写完全的日志,预提交钩子才能正确分析。 TortoiseSVN可以在两个方面帮助用户: 当用... 阅读全文
posted @ 2011-03-22 17:51 明永成 阅读(437) 评论(0) 推荐(0)
 
摘要: 与 BUG 跟踪系统/问题跟踪集成 在软件开发中,修改依赖于一个bug或问题编号是很常见的。bug跟踪系统的用户(问题跟踪者)喜欢在问题跟踪中将Subversion的修改与一个指定编号联系起来。因此很多问题跟踪者提供了一个预提交钩子脚本,分析日志,查找提交相关的bug编号。这稍微有些不可靠,因为它依赖于用户写完全的日志,预提交钩子才能正确分析。 TortoiseSVN可以在两个方面帮助用户: 当用... 阅读全文
posted @ 2011-03-22 17:50 明永成 阅读(307) 评论(0) 推荐(0)
 
摘要: 重新定位工作副本 图 5.48. 重定位对话框 If your repository has for some reason changed it's location (IP/URL). Maybe you're even stuck and can't commit and you don't want to checkout your working copy again from the ... 阅读全文
posted @ 2011-03-22 17:49 明永成 阅读(472) 评论(0) 推荐(0)
 
摘要: 版本分支图 图 5.46. 一个版本分支 有时候,我们需要知道从哪开始有了分支和标签,同时想知道这条支路是单独的分支还是树型结构。如果需要你可以使用TortoiseSVN → 版本分支图...。 这个版本历史分析图能够显示分支/标签从什么地方开始创建,以及什么时候删除。 重要 In order to generate the graph, TortoiseSVN must fetch all lo... 阅读全文
posted @ 2011-03-22 17:48 明永成 阅读(2560) 评论(0) 推荐(0)
 
摘要: 导出一个Subversion工作副本 有时候你需要一个没有.svn目录的工作目录树,例如,创建一份源代码的压缩文件,或者导出一份用作WEB服务器。不用先复制,然后手工删除所有.svn目录。TortoiseSVN提供命令TortoiseSVN → 导出...。如果你要用这个功能操作拥有一份工作副本,将会在要求你保存一份干净的文件。从URL或工作副本导出有少许不同。 图 5.47. 从 URL 导出对... 阅读全文
posted @ 2011-03-22 17:48 明永成 阅读(1476) 评论(0) 推荐(0)
 
摘要: 版本库浏览器 有时候我们需要在版本库中直接进行操作,而不是在工作副本中。这就是我们的版本库浏览器可以做到的。正如资源管理器和能浏览你的工作副本一样,版本库浏览器允许你浏览版本库的结构和状态。 图 5.45. 版本库浏览器 在版本库浏览器中你可以执行比如复制,转移,重命名、、、直接操作在版本库上。 除了版本库浏览器不是显示计算机中的文件,而是显示版本库中特定版本的内容之外,它看起来很象 Window... 阅读全文
posted @ 2011-03-22 17:47 明永成 阅读(443) 评论(0) 推荐(0)
 
摘要: 谁修改了哪一行? 有时你不仅要知道哪一行做了修改,还要精确地知道谁修改了一个文件中的哪一行。这就是TortoiseSVN → 追溯...命令,有时候也叫做 评注 命令派上用场的时候了。 对一个文件中的每一行,这个命令列出了作者和该行修改时的版本。 追溯文件 图 5.43. 评注/追溯对话框 如果对早期版本的修改不感兴趣,你可以设置从哪个版本开始追溯。如果你想追溯每一个版本,你可以把那个数值设置为1... 阅读全文
posted @ 2011-03-22 17:46 明永成 阅读(290) 评论(0) 推荐(0)
 
摘要: 创建并应用补丁 对开源工程(比如本工程)来说,每个人对仓库都有读访问权,并且任何人都可以对该工程做出修改。那么如何控制这些修改呢?如果任何人都可以提交自己的修改,那么这个工程可能永远都会处于不稳定状态,而且很有可能永远的瘫痪下去。在这种情况下,修改需要以补丁文件的形式先递交到有写访问权限的开发组。开发组可以先对该补丁文件进行审查,然后决定将其提交到仓库里或者是退还给作者。 补丁文件只是简单地用统一... 阅读全文
posted @ 2011-03-22 17:45 明永成 阅读(292) 评论(0) 推荐(0)
 
摘要: 正在合并 分支用来维护独立的开发支线,在一些阶段,你可能需要将分支上的修改合并到最新版本,或者将最新版本的修改合并到分支。 It is important to understand how branching and merging works in Subversion before you start using it, as it can become quite complex. It ... 阅读全文
posted @ 2011-03-22 17:44 明永成 阅读(855) 评论(0) 推荐(0)
 
摘要: 锁 使用之前在“复制-修改-合并 方案”一节中描述的“复制-修改-合并” 的方法,Subversion通常不需要锁就可以很好的工作。但是,在某些情况下你可能需要制定某种锁定策略。 例如,你使用图形文件等“不能合并”的文件。如果两个人修改同一个这样的文件,合并是不可能的,所以你丢失其中一个的修改。 Your company has always used a locking revision con... 阅读全文
posted @ 2011-03-22 17:44 明永成 阅读(289) 评论(0) 推荐(0)
 
摘要: 分支/标记 版本控制系统的一个特性是能够把各种修改分离出来放在开发品的一个分割线上。这条线被称为分支。分支经常被用来试验新的特性,而不会对开发有编译错误的干扰。当新的特性足够稳定之后,开发品的分支就可以混合回主分支里(主干线). 版本控制系统的另一个特性是能够标记特殊的版本(例如某个发布版本),所以你可以在任何时候重新建立一个特定的构件和环境。这个过程被称作标记。 Subversion does ... 阅读全文
posted @ 2011-03-22 17:43 明永成 阅读(2031) 评论(0) 推荐(0)
 
摘要: 项目设置 图 5.30. 资源管理器属性页,Subversion 页面 有时你可能想得到关于一个文件/目录的更多的细节信息而不仅是一个重载的标志。 你能得到Subversion的属性对话框中浏览到的所有信息。只需选择指定文件或目录,然后在文件菜单中选择Windows Menu → properties(注意: 这是浏览器提供的标准属性菜单,而不是TortoiseSVN 子菜单的其中之一)。在Tor... 阅读全文
posted @ 2011-03-22 17:42 明永成 阅读(471) 评论(0) 推荐(0)
 
摘要: 清理 也许由于服务器问题,一个Subversion指令不能成功地完成,你的工作副本因此被滞留在一个不一致的状态。 那样的话,你需要在该目录上使用TortoiseSVN → 清理命令。在工作副本的根目录使用它是一个好主意。 Cleanup has another useful side effect. If a file date changes but its content doesn't, S... 阅读全文
posted @ 2011-03-22 17:41 明永成 阅读(233) 评论(0) 推荐(0)
 
摘要: 如果你想要撤消一个文件自上次更新后的所有的变更,你需要选择该文件, 右击弹出快捷菜单,然后选择TortoiseSVN → Revert命令,将会弹出一个显示这个你已经变更并能恢复的文件。选择那些你想要恢复的然后按OK. 图 5.29. 恢复对话框 。 If you want to undo a deletion or a rename, you need to use Revert on the ... 阅读全文
posted @ 2011-03-22 17:40 明永成 阅读(247) 评论(0) 推荐(0)
 
摘要: 不像CVS,Subversion允许重命名和移动文件和目录。因此在TortoiseSVN 的子菜单中有删除和重命名的菜单项。 图 5.28. 版本控制文件的菜单浏览 正在删除文件/文件夹 Use TortoiseSVN → Delete to remove files or folders from subversion. When you TortoiseSVN → Delete a file,... 阅读全文
posted @ 2011-03-22 17:39 明永成 阅读(504) 评论(0) 推荐(1)
 
摘要: 图 5.25. 未受版本控制的文件之资源管理器上下文菜单 如果在你的开发过程中你创建了新的文件或目录,那么你需要把他们加入你的版本控制中。选择那个文件或目录并使用TortoiseSVN → 添加(Add). 当你添加了指定的文件/目录到版本控制系统之后,这个文件上会出现一个added标志,这意味着你得先提交你的工作副本使该文件/目录对其他开发者来说成为有效的。添加一个文件/目录不会not影响版本... 阅读全文
posted @ 2011-03-22 17:38 明永成 阅读(240) 评论(0) 推荐(0)
 
摘要: One of the commonest requirements in project development is to see what has changed. You might want to look at the differences between two revisions of the same file, or the differences between two se... 阅读全文
posted @ 2011-03-22 17:37 明永成 阅读(409) 评论(0) 推荐(0)
 
摘要: 对于每次进行修改和提交,你应该有针对性地留下日志信息。这样,你就可以在以后方便地看到你都做了什么,为什么这么做。当然这么做还是你拥有了开发过程的详细日志。 版本日志对话框可以获取所有的日志信息,并将其显示出来。对话框的视图分成3个面板。 最上方的面板显示了版本的列表。这其中包含了日期和时间,以及提交的用户和日志信息开头的部分内容。 以蓝色显示的行表示某些内容被复制到该开发版本中(可能是从一个分支中... 阅读全文
posted @ 2011-03-22 17:36 明永成 阅读(574) 评论(0) 推荐(0)
 
摘要: 理想情况下,你任何时候都只做一件事,你的工作副本只包含一个逻辑修改集合。很好,回到现实。你经常会同时做几件不相关的事,当你察看提交对话框时,所有修改混到一起。修改列表特性帮助你分组,让你容易看到正在做什么。当然它只能在修改不重合的时候工作。如果两个不同的任务影响到同一个文件,没有办法隔离修改。 重要 The changelist feature in TortoiseSVN is only av... 阅读全文
posted @ 2011-03-22 17:35 明永成 阅读(183) 评论(0) 推荐(0)
 
摘要: 当你在你的工作副本上工作时,你时常需要知道哪些文件你已经修改/增加/删除或改名了,或者甚至是哪个文件已经被其他人修改并提交了。 图标重载 图 5.12. 显示重载图标的资源管理器 现在你已经从 Subversion 版本库中检出了一份工作副本,你可以在资源管理器中看一下这些文件的图标有什么变化。这也正是 TortoiseSVN 这么流行的原因之一。TortoiseSVN 加入了被称为重载图标的功能... 阅读全文
posted @ 2011-03-22 17:34 明永成 阅读(205) 评论(0) 推荐(0)
 
摘要: 有时当你从版本库中更新你的文件时,会有冲突。冲突出现的原因是两个开发人员修改了文件中相同的几行。由于Subversion不知道你的项目的具体情况,它把解决冲突的工作留给了开发人员。一旦出现冲突,你就应该打开有问题的文件,查找以字符串<<<<<<<开头的行。有冲突的区域用如下的方式标记: <<<<<<< filename 你的修改======= 来自版本库中的代码>>>>>>> revision对于... 阅读全文
posted @ 2011-03-22 17:28 明永成 阅读(286) 评论(0) 推荐(0)
 
摘要: 图 5.11. 已经完成更新的进度对话框 Periodically, you should ensure that changes done by others get incorporated in your local working copy. The process of getting changes from the server to your local copy is know... 阅读全文
posted @ 2011-03-22 17:25 明永成 阅读(949) 评论(0) 推荐(0)
 
摘要: 将你对工作副本的修改发送给版本库,称为提交修改。但在你提交之前要确保你的工作副本是最新的。你可以直接使用TortoiseSVN → 更新,或者,你可以先使用TortoiseSVN → 检查修改看看哪些文件在本地或是服务器上已经有了改动。 提交对话框 如果你的工作副本是最新的,并且没有冲突,你就已经为提交做好准备了,选择你要提交的文件和/或文件夹,然后TortoiseSVN → 提交.... 图 5... 阅读全文
posted @ 2011-03-22 17:22 明永成 阅读(541) 评论(0) 推荐(0)
 
摘要: 为了得到一个工作副本,需要进行从版本库检出的操作。 在Windows资源管理器里选择一个存放工作副本的目录。右键点击弹出右键菜单,选择TortoiseSVN → 检出…命令。然后就会看到下面的对话框: 图 5.7. 检出对话框 如果输入一个并不存在的目录名,那么这个名字的目录就会被创建出来。 检出深度 你可以选择要检出的深度,它允许你指定子目录递归的深度。如果你只需要大目录中的几个子条目,你可以... 阅读全文
posted @ 2011-03-22 17:15 明永成 阅读(352) 评论(0) 推荐(0)
 
摘要: 导入 If you are importing into an existing repository which already contains some projects, then the repository structure will already have been decided. If are importing data into a new repository then... 阅读全文
posted @ 2011-03-22 17:11 明永成 阅读(393) 评论(0) 推荐(0)
 
摘要: 无论你用什么协议访问你的版本库,都至少需要创建一个版本库,这可以使用Subversion命令行客户端或TortoiseSVN完成。 如果你还没有创建Subversion版本库,是时间开始了。 创建版本库 你可以使用 FSFS 或较老的 Berkeley 数据库(BDB)作为版本库的后端,FSFS 格式通常更快一点,还容易管理,而且可以正常运行在网络共享磁盘上 或 Windows 98 中。BDB ... 阅读全文
posted @ 2011-03-22 17:06 明永成 阅读(549) 评论(0) 推荐(0)
 
摘要: 简介 有一些情况下,不能使用Apache作为你的服务器,Subversion包括Svnserve-一个轻型的独立服务器,使用普通TCP/IP连接之上的自定义协议。 In most cases svnserve is easier to setup and runs faster than the Apache based server. And now that SASL support is i... 阅读全文
posted @ 2011-03-22 16:27 明永成 阅读(3209) 评论(0) 推荐(0)
 
摘要: 工作副本 你已经阅读过了关于工作副本的内容,现在我们要讲一讲客户端怎样建立和使用它。 一个 Subversion 工作副本是你本地机器一个普通的目录,保存着一些文件,你可以任意的编辑文件,而且如果是源代码文件,你可以像平常一样编译,你的工作副本是你的私有工作区,在你明确的做了特定操作之前,Subversion 不会把你的修改与其他人的合并,也不会把你的修改展示给别人。 After you've m... 阅读全文
posted @ 2011-03-22 16:16 明永成 阅读(287) 评论(0) 推荐(0)
 
摘要: 所有的版本控制系统都需要解决这样一个基础问题: 怎样让系统允许用户共享信息,而不会让他们因意外而互相干扰?版本库里意外覆盖别人的更改非常的容易。 文件共享的问题 考虑这个情景,我们有两个共同工作者,Harry 和 Sally,他们想同时编辑版本库里的同一个文件,如果首先 Harry 保存它的修改,过了一会,Sally 可能凑巧用自己的版本覆盖了这些文件,Harry 的更改不会永远消失(因为系统记录... 阅读全文
posted @ 2011-03-22 16:09 明永成 阅读(232) 评论(0) 推荐(0)
 
摘要: Subversion 是一种集中的分享信息的系统,它的核心是版本库,储存所有的数据,版本库按照文件树形式储存数据-包括文件和目录,任意数量的客户端可以连接到版本库,读写这些文件。通过写数据,别人可以看到这些信息;通过读数据,可以看到别人的修改。 图 2.1. 一个典型的客户/服务器系统 所以为什么这很有趣呢?讲了这么多,让人感觉这是一种普通的文件服务器,但实际上,版本库是另一种文件服务器,而不是你... 阅读全文
posted @ 2011-03-22 15:51 明永成 阅读(234) 评论(0) 推荐(0)
 
摘要: 是什么让 TortoiseSVN 成为一个好的 Subversion 客户端?下面是一个简短的特性列表。 外壳集成 TortoiseSVN 与Windows 外壳(例如资源管理器)无缝集成,你可以保持在熟悉的工具上工作,不需要在每次使用版本控制功能时切换应用程序。 并且你不一定必须使用 Windows 资源管理器,TortoiseSVN 的右键菜单可以工作在其他文件管理器,以及文件/打开对话框等标... 阅读全文
posted @ 2011-03-22 15:47 明永成 阅读(344) 评论(0) 推荐(0)
 
摘要: TortoiseSVN 是 Subversion 版本控制系统的一个免费开源客户端,可以超越时间的管理文件和目录。文件保存在中央版本库,除了能记住文件和目录的每次修改以外,版本库非常像普通的文件服务器。你可以将文件恢复到过去的版本,并且可以通过检查历史知道数据做了哪些修改,谁做的修改。这就是为什么许多人将 Subversion 和版本控制系统看作一种“时间机器”。 某些版本控制系统也是软件配置管理... 阅读全文
posted @ 2011-03-22 15:40 明永成 阅读(398) 评论(0) 推荐(0)
 
摘要: 参考 http://svndoc.iusesvn.com/tsvn/1.5/ http://www.subversion.org.cn/svnbook/nightly/index.html 快速开发需要准准确理解svn使用的关键字 1、Create repository here,在本地创建知识库。 可以对一个空的文件夹穿件一个只是库,然后通过Repo-Browser来查看该知识库的地址,在本地的... 阅读全文
posted @ 2011-03-22 15:28 明永成 阅读(243) 评论(0) 推荐(0)
 
摘要: html访问webService<form action='http://localhost:2645/Service1.asmx/HelloWorld' method="POST"><input type="submit" value="调用" class="button"></form> 阅读全文
posted @ 2011-03-22 07:58 明永成 阅读(174) 评论(0) 推荐(0)
 
摘要: WebClient访问webService static void Main(string[] args) { string uri = @"http://localhost:2645/Service1.asmx/HelloWorld1"; WebClient wc = new WebClient(); StringBuilder postData = new StringBuilder(); p... 阅读全文
posted @ 2011-03-22 07:56 明永成 阅读(321) 评论(0) 推荐(0)