svn使用指南.docx
- 文档编号:12756599
- 上传时间:2023-04-21
- 格式:DOCX
- 页数:22
- 大小:659.08KB
svn使用指南.docx
《svn使用指南.docx》由会员分享,可在线阅读,更多相关《svn使用指南.docx(22页珍藏版)》请在冰豆网上搜索。
svn使用指南
svn的使用有两种方式,第一种方式是安装TortoiseSVN,在MyEclipse外面使用;第二种方式是在MyEclipse中安装svn插件,然后在MyEclipse中使用svn。
一般常用后者。
第一章在Eclipse中使用svn
一、svn插件的安装:
首先要把在Eclipse中安装svn插件。
首先必须有这样一个文件夹:
启动Eclipse,在Eclipse中,
1.选择HelpSoftwareUpdatesFindandInstall..
2.选择Searchfornewfeaturestoinstall
3.选择NewLocalSite,然后在浏览文件夹中选择svn插件所在文件夹(即上面说到的那个svn文件夹)
4.选择上一步新建的LocalSite,finsh
5.把出错的选项的勾去掉
具体如下:
6、安装完成后重新启动Eclipse。
7、校验subclip是否安装成功,打开Windows->showview->other,出现视图窗口,表示Subclipse已经安装完成。
二、subeclipse的使用
打开上面的视图窗口,选择svnrepository,点击OK,
在eclipse控制台的左边窗口中出现svnrepositories。
1、创建一个新的存库储地址
当你需要创建一个新的存储库地址时,点击AddSVNRepository按钮
或者在右击透视图,选择New>RepositoryLocation...
添加SVN存储库对话框会提示您的SVN的URL,输入您要连接的SVN地址。
(Username和Password都为姓名拼音全拼)
点击“OK”后,SVN的url就添加到svnrepositories中。
2、检出(Checkout)一个项目
概述
检出是一个专有名词,指从存储库的一个项目中产生一个副本,并把它复制到您的本地工作区的过程。
在SVN中,检出过程创建一个工作副本。
工作副本是一个特殊格式的文件夹结构,它额外包含一些.svn文件夹,这些文件夹存储SVN信息,以及在检出该项目后为项目中每项保留一个原始副本。
找到之前创建的SVN的url连接,展开svnrepository的内容,选择需要检出的项目,点击右键,出现下图所示的框:
选择checkout,出现如下图所示对话框,
如选择checkoutasaprojectconfiguredusingtheNewProjectWizard,则会以新建工程向导的方式检出文件夹。
此选项相当于新建一个项目,并把svncheckoutsvn源码到该项目。
推荐使用此方法检出svn项目。
如选择Checkoutasaprojectintheworkspace,需更改ProjectName,点击Finish会以更改的项目名称自动检出文件夹。
此选项只是简单的检出SVN库上的源码。
选择前者,出现以下窗口:
像平常那样创建一个WebProject,然后再点击“finish”,进行Checkingout:
检出的项目如下图所示:
3、在Eclipse中进行svn的其他相关操作
在Eclipse中,SVN插件利用Eclipse的Team专题结合了SVN的功能,只要你使用Eclipse操作您的工作副本,Eclipse将捕获您的改动和重构。
在eclipse的Team专题中可以找到svn的更新,提交,删除,增加,分支,合并等功能,使用方法与tortoisesvn类似。
第二章TortoiseSVN的安装和使用
一、下载TortoiseSVN软件,安装在个人电脑上
下载地址:
ftp:
//192.168.13.10/SVN相关软件/
登录FTP使用匿名用户或guest/guest都可以
TortoiseSVN:
TortoiseSVN-1.5.4.14259-win32-svn-1.5.3.msi
中文语言包:
LanguagePack_1.5.4.14259-win32-zh_CN.msi
1、安装说明:
先安装TortoiseSVN,再安装中文语言包,安装完毕后,在资源管理器中会集成TSVN的菜单中,设置成中文即可,如下图示意:
2、环境设置说明:
在“全局忽略样式”中设置以下字符串(这是目前发现的在代码中存在的垃圾文件,可设置在SVN的忽略选项中,提交时TSVN会忽略此类文件):
*.scc*.bak*复件**.~**.jad*.class
二、建立工作空间
1、在自己本地适当位置建立工作空间根目录,例如:
D/WorkSpace;
在WorkSpace下单击右键调出TortoiseSVN菜单,选择”SVNCheckout”:
在如下弹出界面填写版本库的URL,选择检出”HEADreversion”以获得最新修订版;
三、日常操作
1、在主干上工作:
通常目前主要的开发工作都在分支上进行,选定工作分支参照上一节签出所需工作空间即可。
2、同步工作空间
注意:
在对工作空间进行修改之前首先必须同步工作空间:
否则很可能因为不能获得别人的最新修改而导致冲突和其他代码同步问题。
3、删除和新建
一般来说删除和新建文件和文件夹可以在工作空间中直接进行,然后提交这次修改即可,推荐使用TortoiseSVN提供的”Delete”和”Add”功能,这样可以节省提交修改的时间:
4、重命名和移动
注意:
对文件或文件夹的重命名和移动,必须使用Tortoise提供的功能操作,否则将丢失改名后的配置项的来源信息,否则配置库会认为本次修改为:
删除一个配置项,并添加一个新的配置项。
配置项的重命名:
选中需要修改的文件或文件夹,右键单击,点选”Rename”;
填入新的文件或文件夹名,并确定。
5、配置项的位置移动
选中需要修改的文件或文件夹,右键拖动需要移动的文件或文件夹到目的目录,并在弹出菜单中选择:
6、提交和忽略
提交修改:
当本地修改完成后应及时提交所做的修改,在工作空间内右键点击,在弹出菜单中选择”SVNCommit”;
勾选需要提交的配置项,并填写Comments:
忽略
注意:
对于不需要在进入配置库的数据必须添加到忽略列表中,以防止提交时被误提交到配置库。
7、冲突解决
解决冲突有两种办法,一种是在修改前申请锁定,这样直到文件被解锁之前其他人不能提交被锁定代码修改;另一种是冲突发生后合并解决冲突,然后提交解决冲突后的配置项。
修改前锁定(Lock)
右键单击需要锁定的目标文件选择”Getlock”,并填写Comments:
右键单击已锁定目标选择”Releaselock”即可解除该配置项的锁定
8、冲突合并(Merge)
当提交有冲突的配置项,会从配置库获得如下警告信息:
和配置库进行同步操作后会从配置库获得如下信息:
冲突文件会别下载到本地工作空间以便经过比较、合并来解决冲突
当冲突解决后,右键点击已解决冲突的配置项,选择”Resolved”确认冲突已解决,并提交解决冲突后的配置项修改。
9、恢复/撤销修改
修改尚未提交到配置库前可以右键单击配置项并选择”Revert”以撤销当前修改:
注意:
当修改一旦提交到配置库就不能被撤销
四、Tortoisesvn的日常操作
1、Checkout(检出)与Export(导出)
两者都是获取文件,区别在于,checkout方式获取文件后,文件处于SVN版本控制中,而export是导出当前版本的数据,文件脱离了SVN版本控制。
2、Relocate(重定位)与Switch(切换)
如果你的版本库移动了,或许是因为移动到了一个新的目录,或者是域名改变,你需要“relocate”你的工作副本,这样你的版本库URL指向新的地址,这种情况下,是版本库本身移动了;
如果要在同一个版本库中切换一个分支或目录,就需要执行Switch操作。
当主干和分支只有微小差别时,这个命令非常有用,你可以在目录之间跳转,而只会有很小区别需要传输。
3、Delete(删除)
删除文件要使用“TortoiseSVN—Delete”进行删除,一定不要直接删除(对于重命名、移动文件或文件夹也是一样,要使用TortoiseSVN的菜单进行这些操作,否则之前的版本信息会丢失。
);文件被删除后,该文件的所有修改历史仍然保存在SVN服务器中,以后仍然可以获得该文件的修改历史。
4、Commit(提交)
进行了任何修改后,通过Commit操作可以将修改提交到服务器的版本仓库中。
在工作复本的文件夹的空白处点击鼠标右键和选中当前目录执行提交的效果一样;
●提交文件要慎重,尽量不要提交不需要或不能提交的文件,包括以下几类文件:
错误文件:
这就要求提交前先在本地进行测试,确保不会引入原本修改过的BUG;
临时文件*tmp、垃圾文件:
为了避免提交这类文件,就尽量不要直接Commit,选择全部文件提交,而是先执行Add操作选择需要添加的文件,这适合提交文件数目较少的情况,当然,如果你的电脑设置的可以显示这类隐藏文件,你就直接删了它们,以除后患,如果你有定期清理电脑垃圾文件的习惯,这类文件就自然会被清理掉;
编译器产生的文件,例如*.obj,生成的二进制文件等,常有些同事不注意把Debug和Release目录都Commit了!
其实,“TortoiseSVN—Settings—General”中有一个设置“Globalignorepattern”(全局忽略模式),通过在模式框中输入文件名或扩展名就可以在提交时忽略这些文件或文件夹。
不同的模式之间以空格分隔,例如*/bin*/obj*.bak*.~?
?
*.jar*.[Tt]mp;
病毒文件:
在实际中,真的碰到有同事把病毒文件都提交到SVN版本库中了,这不是害人吗,因此首先要养成定期杀毒的良好习惯,其次在提交时一定不要一股脑全盘提交!
●提交文件还要养成以下良好习惯:
Ø 提交时一定要写备注,而且要写有意义的备注。
备注有助于其他人(包括三个月后的你自己)理解你对文件所做的修改;其次在检出历史版本时,清晰的日志有助于快速查找到自己所需要的版本;
Ø 把握Commit的频率。
不能太频繁,每修改一个小小的地方就提交,则会产生很多版本;而隔时间太久再提交,则其他相关人员不能及时获取你的改动,在提交时就容易造成冲突;当然,要视团队的具体情况而定了。
Ø 在多人协作时,尽量修改自己撰写的部分,不要修改其他部分;这就要看团队协作的能力了。
1、Update(更新)
Update对不同的人所做的修改会自动合并,如果无法自动合并则会发生冲突,需要手工用文件比较工具进行合并;因此要注意经常更新自己的工作复本,以保证自己能够获得最新的修改内容,降低发生冲突的可能性;
要养成提交前先更新的好习惯,如果没有更新就提交,很有可能提交失败;另外,有时候会需要通过复制文件的方式覆盖本地的同名文件,间接的修改文件然后再提交,进行这种操作一定要慎重,如果此时服务器上的文件版本相对于你复制的文件已经修改了某些BUG,这样提交后,以前修复的BUG就又会重现!
2、Revert(撤销)
如果进行了修改,但没有执行Commit操作,如果这时候想放弃这些操作,就可以通过Revert操作更新到修改之前的版本。
如果你想看看先前的某个版本是什么样子,可以通过“TortoiseSVN—Updatetoreversion”,回退到选择的版本。
或者“showlog”,选择某个版本,在右键菜单中选择“Browserrepository”,查看选择的版本。
在实际操作中,有时需要回退到某一个版本,但是在这个过程中可能有一些文件你想保留,也有一些文件你不想保留,这种情况下推荐的做法是:
export你所需要的文件版本,覆盖当前的文件,这样就可以同时保留先前的文件和现在新建的文件。
五、常见问题的解决
1、禁止Eclipse把SVN信息编译到classes里
右键点击project
Properties->JavaBuildPath->Source展开里面的项目
选中Excluded,点击Edit按钮
在Exclusionpatterns中点击Add按钮
输入**/.svn/**
保存即可.
如eclipse下的classes目录中已存在.SVN的文件夹,先删除classes目录,再重新编译即可。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- svn 使用指南