版本控制SVN的使用笔记
安装
客户端和服务端下载地址,打开网址,根据自己的操作系统下载对应的版本,window用户服务端一般安装的是VisualSVN
,客户端安装TortoiseSVN
,在实际工作中,我们一般只需要安装TortoiseSVN
,对应的IDE中安装好svn插件就可以了。
SVN Checkout
进入公司的第一天,当然是将我们的开发项目从服务器上Checkout下来了,在checkout下来之前,我们需要先在本地新建几个文件夹,例如在D:盘下面新建一个code
文件夹,code
下面分别新建branches
和 trunk
文件夹,branches
里面以后存放所有的项目分支, trunk
里面以后存放项目主干,目录结果大致如下:
1
|
code ┌ branches
|
假如项目分支名称为project_V1.0.1_2015_01_01
,则我们一般是再在d:\code\branches
目录下新建一个名为project_V1.0.1_2015_01_01
的文件夹,然后将分支checkout到该文件夹目录下.在以后有新的分支时,同样以分支名命名一个新的文件夹,然后check下来。checkout主干时无需在trunk
目录下新建文件夹。最后我们会发现我们本地的目录结构是和SVN服务器上目录结构一致。
与资源库同步
在update和commit操作之前,我们都需要与资源库同步一下,目的是检查一下别人是否在你操作之前已经提交过代码造成了代码冲突,有冲突的文件默认一般会有一个红色的标记,当有冲突时就需要我们手动解决冲突后再执行update或者commit操作,这里记录下以eclipse为例,怎么解决代码冲突.
如下图中,左边表示本地的代码,右边表示远程服务器上的代码,同事在我之前提交了4个接口方法,左边public void test();
方法是我新加的代码,
这时我在同步代码时就需要先解决冲突,这是只需要点击箭头指向的那个小圈Copy Current change from Right to Left
就可以了,右边的代码会被copy到左边去.然后保存,在文件上鼠标右键点击,然后就可以更新代码了。当然你也可以先更新下来代码后再解决冲突.不一定需要先解决冲突在更新…
更新与提交
建议一定先同步后在执行更新或者提交操作,这样你好大家也都好.commit时一定写好提交注释.
合并代码
分支代码开发完了,我们需要将代码合并到主干上去进行测试,或者两个分支在同时进行不同功能开发时,最后我们需要把一个分支的代码合并到另外一个分支上去.首先我们需要知道我们的目标是什么,合并到分支,合并到主干,到分支,到主干!!!到哪里,重点就在哪里,就已谁为标准,例如我们分支合并到主干:
就以主干为主,在上右键,选择,选择Merge a range of revisions
,点击next
,然后在 URL to merge from
填写svn服务器上分支路径,如:
然后点击Next
,再点击Test merge
,开始测试合并代码了,这时如果文件有冲突会被标记为红色,注意,这不是真正的合并代码,正式的合并需要直接点击Merge
,合并成功后,只是合并到了我们本地,需要的话,还需自己commit到服务器上.Merger的过程中还可能会出现冲突,出现冲突我们怎么解决呢。