TortoiseSVN快速入门



Export
1、下载TortoiseSVN的安装版本并安装。你不会看到任何可执行的程序,因为TortoiseSVN是嵌在windows里面的。
2、新建一个空的文件夹,右键点击它,可以看到TortoiseSVN菜单以及上面的SVN Checkout。
3、不用管这个Checkout,我们选择TortoiseSVN菜单下的Export...,接着它会让你输入url。
4、比如输入handandaily的SVN地址是:http://handandaily.googlecode.com/svn/trunk/
5、其他选项不需要更改,Omit externals不要勾选,HEAD Revision选中表示最新的代码版本,接着点击OK即可将代码导出到这个目录中:)


Checkout...

Checkout的意思签出,虽然和Export的效果一样是把代码从服务器下载到本地,但是Checkout有验证的功能,Checkout到某处的代码,将会被TortoiseSVN监视,里面的文件可以享受各种SVN的服务。

选择那个Checkout的话,就表示这个目录将与这个SVN地址关联,这里的修改可以提交到SVN服务器。由于这表示将参与代码的编写,往往需要开通权限才可以。

可以到http://code.google.com/hosting/,选择create new project,获得一个由google提供的SVN空间,上传你的代码。我就不在这里详细讲申请过程了,填一个简单的表格就可以。

现在,我假设你已经得到某个SVN的账户和密码,譬如我们的RTG项目:
https://handandaily.googlecode.com/svn/trunk/
注意前面是https://,多了一个s表示security,意思需要校验。
假设用户名是guest,密码是abc(这个用户名和密码可以由项目管理者分配给你)

1、在某目录上右键单击SVN Checkout...出现链接输入。填入上放的url,其他选项依旧不要更改,和Export类似。
2、在要求输入用户名和密码的时候填写正确的内容,接着会出现代码下载画面。
3、全部文件checkout之后,目录上会有一个绿色的勾,表示代码在最近一次update只好未被修改。

这时,目录中的文件都会有绿色的勾,如果你修改了他们,就会出现红色的惊叹号表示这个文件已经被修改。这个目录中所有带勾的文件目前都在Tortoise的监视之下了,可以尝试右键单击文件,你会发现可以执行很多操作。接下来我会挑选一些比较常用的来讲解。


Commit,Revert,Add,Delete...

假如你更新了目录中的文件,那么就可以用到commit功能。这个功能就是将你本地的文件修改记录上传到服务器上面,可以理解为上传。

经验小结:
     1.如果操作的文件之前还未提交,而你又想把文件提交到新的分支上,记得一定要选择切换
     2.SVN分支的管理实际上就是把不同的分支用不同的文件保存,因此你在取得新版本的时候会发现,不同分支的最新文件也会被获取下来。


     创建tag操作,相当于把当前的代码版本复制一份到其他地方,然后以这个地方为出发点进行新的开发,与原来位置的版本互不干扰。
     对于branches、tags、trunk这三个目录,并不是subversion必需的,而是被总结的一种良好的团队开发习惯,其使用方法为:
     1.开发者提交所有的新特性到主干。 每日的修改提交到/trunk:新特性,bug修正和其他。
     2.这个主干被拷贝 (注:拷贝的方法-单击“鼠标右键”->TortoiseSVN->Branch/tags...->To URL中路径/branches/1.0) 到“发布”分支。当小组认为软件已经做好发布的准备(如,版本1.0)然后/trunk会被拷贝到/branches/1.0。

     2.1此时本地的branches文件夹中尚未有trunk的拷贝,必须与服务器同步下
     3.项目组继续并行工作,一个小组开始对分支进行严酷的测试,同时另一个小组在/trunk继续新的工作(如,准备2.0),如果一个bug在任何一个位置被发现,错误修正需要来回运送 (即:当trunk中的文件进行修改后,测试组人员在branches中可以通过:单击“鼠标右键 ”->TortoiseSVN->Switch->To URL中的地址一般会自动指向trunk文件夹,示意接下来将同步trunk文件夹下修改过的文件到服务器及本地的branches文件夹) 。然而这个过程有时候也会结束,例如分支已经为发布前的最终测试“停滞”了。
     4.分支已经作了标签并且发布,当测试结束,/branches/1.0作为引用快照已经拷贝到/tags/1.0.0,这个标签被打包发布给客户。

     4.1分支作标签发布到tag文件夹方法和trunk文件夹拷贝到branches/1.0做法相同
     5.分支多次维护。当继续在/trunk上为版本2.0工作,bug修正继续从/trunk运送到/branches/1.0,如果积累了足够的bug修正,管理部门决定发布1.0.1版本:拷贝/branches/1.0到/tags/1.0.1,标签被打包发布。
  一般建立最初的repository时,就建好这三个目录,把所有代码放入/trunk中,如:要将project1目录下的代码导入 repository,project1的结构就是:project1/branches,project1/tags,project1 /trunk,project1/trunk/food.c,project1/trunk/egg.pc……,然后将project1目录导入 repository,建立最初的资料库。然后export回project1,作为本地工作目录。

      6..多人单项目,三个文件夹的作用又不一样了:
          单人维护一个主流版本.放于trunk目录里面;
          多人开发通过单人或者是多人维护代表不同的模块.每个模块就是一个分支brances;

          在一定时期,各模块都有初步版本,则放于trunk中,然后由项目主管进行模块合并成整体,给测试人员检测;
          某个时期出现了一个稳定版本,就标记为一个发布版本,tags来做标记.

相关内容
http://www.cnblogs.com/fan2k/archive/2007/11/01/945335.html

你可能感兴趣的:(tortoiseSVN)