资源描述
SVNS使用手册
SVN使用手册
SVN简介
SVN用于版本管控。您可以把SVN当成您的备份服务器,并且它可以帮您记住每次上传这个服务器的档案内容,并自动地赋予每次的变更一个版本。
VisualSVN服务器端
1. 在服务器端需安装VisualSVN软件,界面如下:Repositories为服务器端程序版本库,
2. 在VisualSVN Server icon 中,Repositories即为客户端上传档案的地方,可以点击右键,新建àRepository,对不同工程建立不同版本库,即上传档案的地方:
3. 在服务器端,可设置登录用户名及密码,如下:在左边树形分支“User”点击右键,点击“新建”中的“User”.在“User name”中输入用户名,Password及Confirm passwork 中添加密码;点击OK 后,即可在右边User框中看见新添加的用户;客户端可以凭此密码进行档案导入及查看服务器端的Repository:
Tortoise SVN客户端
客户端单独使用SVN
a. 首先,建立一个Working目录,即平时用来存放工作档案的地方。通常我们会等到自己的工作做的一个段落的时候再进行备份。所以我们平常都是在Working目录下面工作,等到适当时机在commit到repository中。举例来说,我们想在D槽下面建立一个名为working的目录。首先先把这个目录建立出来:
b. 此时这个目录应该为空的。在档案管理员中按下右键,选择SVN checkout:
接下来,会出现如下画面:
首先我们要填入的是repository的位置,对于SVN来说,repository的位置都是URL。由于我们前面已经在服务器端建立一个repositoryàA,因此,我们现在要在URL of repository这一栏填入https://10.23.17.202/svn/A;
接着,稍微看一下Checkout directory,这个字段应该要指向您的working目录。确认后,按下OK按钮,您应该可以看到如下的讯息窗口。
这样就表示动作完成。按下OK按钮后,再到您刚刚建立的目录下。您将会看到working目录下面多了一个名为.svn的目录(这个目录是隐藏的,如果您的档案管理员没有设定可以看到隐藏目录,您将无法看到它) 。
SVN会在您的工作目录下,以及其子目录下建立这个.svn的子目录。您不应该进去这个目录,尤其不应该更动这个目录下面的任何内容。否则会很可能会造成SVN无法正常运作。
由于,原来的repository是空的,所以我们现在的working目录也是空的。如果您现在checkout的是一个已经有内容的repository,您将会看到working目录下面现在多了许多目录及档案。
日常操作
一. 上传新文件(Svn服务器无此文件,开发人员新上传的文件):
1. 在working文件夹中新建工程(如Pro),并在其中添加文件,在该工程上点击右键àTortoiseSVNàAdd:
2. 接下来出现如下图:
3. 在其中可选择需要上传的文档,然后点击OK,如下对话框任务完成情况:
4. 再在该工程文件夹Icon上点击右键àSVN Commit ,来同步文件:
5. 出现如上框内,在“Messages”中添加上传的理由,供以后Update时作参考;下部分用于选择做同步的文件;
6. 如上对话框用于显示同步的进度及结果;
7. 同步以后,可看到工程文件夹变成: ,说明该文件夹已同步。(而当工程中文件有更新时,Icon会变成)。
二. 下载文件(Svn服务器存在此文件,开发人员无此文件,下载):
如前面所述,在相应文件夹,点击右键à”SVN Checkout”,即可将文件下载到本地:
三. 上传已存在文件(Svn服务器存在此文件,开发人员有此文件,开发人员上传文件,将服务器文件更新):
当修改文件后,点击右键àSVN Commit同步,即可将修改后的文件上传,并且服务器去自动更新版本;
四. 恢复历史版本文件(发现新更改的文件存在BUG,可直接恢复历史某个版本的文件到本版本中):
在需要恢复的文件Icon上点击右键àUpdate to version(如下图1)
接着出现(如下图二),在此设置要恢复到得版本号:
点击”OK”后,即可恢复到相应的版本。
五. 文件合并(对有冲突的文件进行对比,合并):
当你更新工作副本时你可能会遇到“ 冲突 ”。这种情况通常发生在其他人也修改了你当前正在处理的文件的同一部分。当遇到冲突时,你必须手工来解决它——这就是TortoiseMerge 能帮助你的地方。TortoiseMerge为比较及合并差异的工具。
基本操作
1. 首先在所要改变的文件icon上点击右键:选择TortoiseàDiff with previous version
2. 在TortoiseMerge页面中,选择菜单栏中的,出现如下对话框:
其中,Base file用于选择最原始的文件,其可以为空;Their file 和 My file可以选择用于对比的两个文件,并且改动将保存在My file中。选择文件后,点击“OK”.
3. 选择文件后,进入Merge 中的对比和合并视窗:
其中,左右为两个对比文件,而黄色部分表示出两文件不同之处;
4. 在不同部分点击右键,可以对右侧文件进行修改:
其中,“Use other text block”用于将右边文件的该行改为与左边相同;
“Use whole other file”用于将所有不同行改为与左边相同;
“Use both text blocks(this one first)”用于合并两文件不同地方,且本文件该行在前;
“Use both text blocks(this one last)”用于合并两文件不同地方,且本文件该行在后。
5. 修改后,点击,将改动保存到右面的文件中。
安装eclipse后,需要在eclipse中安装SVN插件,安装成功后,可在eclipse中看到相应SVN的功能菜单:
客户端在Eclipse开发环境下操作
上传新文件(Svn服务器无此文件,开发人员新上传的文件):
8. 首先,可以先将我们客户端的文件上传到服务器端:在要上传的文件夹点击右键àTortoiseSVNàImport:
出现如下对话框,在“URL of repository”中添加,要上传到的版本库的地址,并可在Import message中添加上传理由,以便以后查找,点击OK完成上传:
此时,我们已将本地文件上传到服务器的版本库中,但是此时本地文件并未与服务器版本库连接,为完成连接可将服务器端的文件“检出”:
在eclipse下,点击,然后在出现的对话框中选择“从SVN检出项目”后,点击“Next”:
在如下框内,选择要检出的文件所在的版本库的位置,然后点击“Next”:
然后选择要从SVN检出的文件夹:
接下来,按步骤操作点击“Next”最后会看到,该文件出现在eclipse中:
上传已存在文件(Svn服务器存在此文件,开发人员有此文件,开发人员上传文件,将服务器文件更新):
1. 当本地文件被修改后,会发现文件图标变成,此时如果想同步到版本库中,在相应文件上点击右键àTeamà提交:
2. 在如下框内填写提交理由,选择提交文件,即可将修改后的文件上传,并且服务器去自动更新版本:
恢复历史版本文件(发现新更改的文件存在BUG,可直接恢复历史某个版本的文件到本版本中):
1. 在需要恢复的文件上点击右键àTeamàUpdate to version
2. 接着出现如下框,在此设置要恢复到得版本号,点击OK后,SVN会将文件恢复到相应版本:
分支与合并
分支是用于区分开发版本和当前发布版本的。而合并是在开发的一些阶段,将分支上的修改合并到最新版本,或者将最新版本修改合并到分支上.
1. 首先,在eclipse中相应文件点击右键àTeamà分支/标记,为文件创建分支,并且本文件即为主干文件:
我们可以看到服务器端会增加新的版本库,并且我们可以在服务器端任意切换主干文件和分支文件:点击右键àTeamà切换:
分支与主干不同文件列表
当分支有修改时,我们可能想确认,分支与主干哪些文件不同,可以做下面的操作:
1. 首先,首先在对比的主干文件上点击右键àTeamà显示资源历史记录:
2. 在“History”框内的任意记录上点击右键à比较:
3. 出现如下框后,在比较来源中,添加分支文件的地址,在比较对象中填写主干文件的地址,并可选择修订的版本:
4. 在“Structure Compare”中,就会主干和分支的不同的文件:
5. 如果想将不同的文件导出,做如下操作:
首先,要将分支文件导出到本地,然后到eclipse中的分支文件上点击右键àTortoiseSVNàshow log:
然后在Log Messages中,在相应版本log 中点击右键à”Compare with previous revision”:
在对比框中,选择要对比的版本,在下面的框内,会列出不同的文件:
选择不同的文件,点击右键àExport selection to…
最后指定保存的地址后,点击确定,即可导出相应不同的文件。
文件内容对比
如果希望知道分支文件对主干文件修改的具体内容,可做如下操作:
1. 在相应的文件上点击右键àReplace Withà分支/标记:
2. 然后选择分支中的文件:
3. 点击OK后,即可出现两个文件的对比,并显示不同地方:
文件类型
应支持文件类型
是否支持
*.jar
支持
*.class
支持
*.java
支持
*.jsp
支持
*.html
支持
*.css
支持
*.js
支持
*.txt
支持
*.xls
支持
*.xml
支持
*.doc
支持
注意
当文件后缀名有大小写的区分时,文件可以上传到数据库。但是,将文件下载到本地时,会有如下错误提示:
27
哈尔滨市龙浩信息科技开发有限公司 Co,.Ltd 2005-2009
地址:哈尔滨市香坊区珠江路 62 号
电话:0451-82301178 邮编:150036
展开阅读全文