在档案管理员中按下右键后(您可以在working目录的icon上按,也可进入working目录后,在空白的地方按),选择SVN checkout。
接着您可以看到如下的画面:
首先我们要填入的是repository的位置,对于SVN来说,repository的位置都是URL。由于我们前面已经在E槽建立一个repository,因此,我们现在要在URL of repository这一栏填入file:///E:/svn_repo/。
接着,稍微看一下Checkout directory,这个字段应该要指向您的working目录。确认后,按下OK按钮,您应该可以看到如下的讯息窗口。
这样就表示动作完成。按下OK按钮后,再到您刚刚建立的目录下。您将会看到working目录下面多了一个名为.svn的目录(这个目录是隐藏的,如果您的档案管理员没有设定可以看到隐藏目录,您将无法看到它) 。
SVN会在您的工作目录下,以及其子目录下建立这个.svn的子目录。您不应该进去这个目录,尤其不应该更动这个目录下面的任何内容。否则会很可能会造成SVN无法正常运作。
由于,原来的repository是空的,所以我们现在的working目录也是空的。如果您现在checkout的是一个已经有内容的repository,您将会看到working目录下面现在多了许多目录及档案。
如果您要在一个已经存在的SVN Server上面checkout出上面的档案,您只需要给定正确的URL以及working目录的名称。就可以取得指定的档案及目录了。
新增档案及目录到Repository中
假设您前面的动作都无误。现在您开始开发一个新的程序。假设您开发的程序将放在前面建立的working目录下面的my_ prj子目录。如下所示
:
假设您已经编辑好档案,准备把他们放到SVN的repository中。您需要在my_prj目录的icon上面,按鼠标右键,并且选择TortoiseSVN->Add:
接着,TortoiseSVN会把准备要加入的档案及目录,显示给您看。打勾的就是等下要被加入到Repository中的。如果您有某些档案或是目录不想在这次加入,您可以让该项目不要被勾选。如此,它就不会被加入到Repository去。
按下OK后,您将会看到如下的讯息窗口:
这样就表示成功了。有一点要注意的是,这个Add的动作并未真正的将档案放到Repository中。仅仅是告知SVN准备要在Repository中放入这些档案。此时,如果您透过档案管理员查看这些档案,应该会看到一个白色红底的惊叹号在档案icon的下方。
这是表示您的working目录中的档案与Repository中的档案还没有同步。现在我们要多一个commit的动作。让这些档案真正的放入到Repository中。您可以在my_prj目录的icon上或者是my_prj目录内的空白处按下鼠标右键,叫出如下的选单,并且选择SVN commit。
紧接着,您将会看到如下的窗口出现: 在这个窗口中,下半部会列出一个清单,让您清楚的了解到哪些档案要被commit到repository中。同样的,如果您有档案不想在这个时候commit到Repository,您可以取消选取的档案,这
-
紧接着,您将会看到如下的窗口出现:
在这个窗口中,下半部会列出一个清单,让您清楚的了解到哪些档案要被commit到repository中。同样的,如果您有档案不想在这个时候commit到Repository,您可以取消选取的档案,这样他们就不会被commit到Repository中。
在档案列表的上方是Message栏,您可以在栏中输入本次commit的目的。这是十分重要的字段,当您commit的次数很多时,可以靠这个讯息知道版本与版本之间的差异。当您输入好Message,按下OK之后,就可以看到如下的窗口出现,通知您已经将指定的档案送到Repository中。
您可以到先前的folder中,确定是否所有的档案icon都有如下的绿色勾勾在上面,这样代表您的档案都正确无误的到repository中。
正常的状况下,您可以看到如上的窗口。在这个窗口中会显示有哪些文件更新了。如果没有看到档案更新的相关信息,这表示您的目录中的档案已经是最新的,所以无须进行更新。
更新至特定版本
有时我们需要回溯至特定的日期或是版本,这时就可以利用SVN的Update to revision的功能。在想要更新的档案或目录icon上面按下鼠标右键。并且选择TortoiseSVN->Update to revision。
在这个Update窗口中,您可以选择更新到最新版本(HEAD)。也可以选择更新到某个指定的版本(Revision)。当然,您可能早就记不起来正确的版本号码。可能只隐约的记得大概在什么时间。没关系,按下Show log按钮,您就可以回顾历史了。
所有您曾经做过的动作,及其日期与对应的版本都会列在这个窗口上面,只要在你想要的版上面点一下,让他变成反白,然后按下OK。这个版本就会自动填入Update窗口中的Revision字段中。您只要再按下一次OK,这个版本就会被取出来到您的硬盘中。
复制档案及目录
很多时候您会希望有另外一个复制的目录来进行新的编修。等到确定这个分支的修改已经完毕了,再合并到原来的主要开发版本上。举例来说,我们目前在working copy下面有如下的目录及档案:
现在,我们要为trunk这个目录建立一个branch。假设我们希望这个目录是在D:\working\my_prj\branch\my_new_branch_for_testing。首先我们可以在trunk目录下面的空白处,或是直接在trunk的icon下面按下鼠标右键。
在选择Branch/Tag…这个项目后,您将会看到如下的对话框出现。
请先确认From WC at URL: 中的目录是您要复制的来源目录。接着,在To URL中输入您要复制过去的路径。通常我们会将所有的branch集中在一个目录下面。以上面的例子来说,branch档案都会集中在branch的子目录下面。在To URL中您只需要输入您要的目录即可。目录不存在时,会由SVN帮您建立。特别需要注意的是SVN因为斜线作为目录分隔字符,而非反斜线。