SVNIdea中对SVN的应用

Posted Do_GH

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SVNIdea中对SVN的应用相关的知识,希望对你有一定的参考价值。

文章目录

配置SVN

在Idea中打开设置(File --> Settings),搜索【SubVersion】配置SVN的程序路径。如果需要切换其他版本管理软件,可以选择【Version Control】选择【Git】即可。

注意:
在安装SVN时,默认是不会安装svn.exe,所以在安装TortoiseSVN时要注意选择插件时将【Command line client tools】勾选安装,才能在Idea中使用SVN的功能。

添加好SVN支持后,就可以在项目中看到关于项目管理的操作按钮。

检出项目

打开Idea,选择【Get From VCS】,从版本管理中获取,

选择版本控制方式(Version control),这里选择【SubVersion】,点击【+】填写需要检出的SVN地址,最后点击检出【Check Out】。

选择项目需要检出的本地路径,之后默认选择即可。

检出成功后会自动进入项目并生成Idea相关文件,对于新增的iml文件Idea会提示是否需要添加到项目管理中,若不需要对该文件进行管理则可直接选择取消,Idea会自动将其添加到忽略文件中。

如果该项目已经通过SVN检出至本地,可以使用Idea先打开该项目选择【VCS】 --> 【Enable Version Control Integration…】,Idea会自动关联远程仓库,添加项目管理。

提交、冲突、还原

提交

对代码进行修改后,点击导航栏中的【Commit】按钮或右键点击项目名选择【SubVersion】–> 【Commit Directory…】进入提交界面,填写提交信息,在最下方可以看到文件的修改内容与修改属性。

冲突

在团队开发过程中,难以避免多人修改同一文件的情况发生,所以需要通过Idea解决冲突。例如:我们将项目重新检出一份,在两个项目中同时修改相同的文件,再提交时Idea就会报错无法正常提交。

此时Idea会提示该文件不是最新文件,首先点击导航栏中的【update】按钮更新本地代码,Idea会对有冲突的文件进行提示并提供用户选择不同的版本,双击其中冲突的文件,Idea会自动弹出本地与仓库的版本对比并提供解决方案,其中左侧为本地版本,右侧为仓库版本,中间为最终解决的版本,修改好最终解决后的文件后,点击提交即可正常提交。


还原

当修改的文件出现问题时,可以选择还原至之前的版本。选择【Subversion】–>【Revert】进行文件还原会将文件还原至最新提交版本。

分支

创建分支

通常我们需要开发新的功能或测试新的版本会创建分支,之后测试无误后再提交至主线分支,此操作也可在Idea中完成。在项目名称处右键,选择【SubVersion】 --> 【Branch or Tag…】创建分支。



此时再查看远程仓库就能够看到新创建的分支文件。

切换分支

点击导航栏的更新按钮,即可在该界面切换分支。勾选【Update/Switch to speciflc url】在【Use branch】中点击【Configure Branches…】设置分支。

点击【+】选择需要切换的分支路径,再点击【OK】

注意该目录选择至项目路径的上一级

配置好分支后,再点击【Use branch】后的文件夹图标,选择分支。

点击【OK】即可切换分支到新创建的分支中。此时可以查看下发任务栏中的【SubVersion】–>【Subversion Working Copies Information】中的远程地址就变为了新的分支地址。如果想要配置其他分支可以点击【Configure Branches】再次进行上述步骤操作。

在Idea中切换分支不会切换本地路径,只是重新定位了本地仓库与远程仓库的连接地址,在分支中提交的代码会自动上传至分支目录中。
若代码未提交即切换分支,修改的代码会指向新的分支地址,此时再提交会将代码提交至其他分支,所以在切换分支前要先提交本地未提交的代码。

合并分支

在分支开发完成后,需要将分支部分提交到主线分支,此时可以通过Idea【SubVersion】任务栏中的【Merge From …】选择需要合并的分支。

选择合并的方式,若需要整体提交选择【merge all】。查看版本差异,并填写提交信息,点击提交即可将分支合并至主线。

设置忽略文件

对于一些需要修改但不需要提交的文件,例如配置文件等,可以在Idea中设置其他提交方案。首先在下方任务栏【Subversion】中的【Local Changes】页签,右键点击左侧菜单栏选择【New Changelist】新建修改文件列表。

输入组名点击【OK】,对于修改后的文件右键单击,将其移动到该组中,再提交时就会自动忽略该文件的变化。

该方法对于已加入版本控制的文件,在提交时可以忽略此文件但不代表其不能再被提交。在提交界面Idea默认选择【Merge from ProjectName】方案,可以通过下拉框选择其他提交方案以实现将忽略文件提交至仓库的操作。

若在Idea中新增文件,Idea会自动提示是否将其添加到版本管理,可根据实际情况进行选择。


对于一些不需要添加到版本管理的文件,可以通过设置项目的属性,达到忽略文件的效果。右键项目名称,选择【Subversion】–>【Set Property】,在设置对话框中选则【svn:ignore】在其中添加需要忽略的文件。

以上是关于SVNIdea中对SVN的应用的主要内容,如果未能解决你的问题,请参考以下文章

svn:IDEA与SVN(配置SVNIDEA添加项目到SVN)

svn检出时报错 急!!!

svn里面检出和导出区别是啥?

当svn检出项目检出一半时停止,如何继续检出

SVN检出更新提交

SVN(一次检出&二次检出)