phpstrom使用svn创建分、支合并到发布流程

一 创建分支branches

 phpstrom使用svn创建分、支合并到发布流程_第1张图片

弹出下面对话框

 phpstrom使用svn创建分、支合并到发布流程_第2张图片

repository location选择库的位置,也就是trunk主干线地址,在copy to中选择要创建的分支地址,在branch or tag后面的按钮点击选择库文件

 phpstrom使用svn创建分、支合并到发布流程_第3张图片

由于是第一次创建分支,这里的branch locations里面没有信息,我们要把branches路径添加进去

点击 

 phpstrom使用svn创建分、支合并到发布流程_第4张图片

选择branches,点击ok

 phpstrom使用svn创建分、支合并到发布流程_第5张图片

点击ok 选择好base url,输入我们要创建的分支名称(这里随意,为了形象的表达我们的分支版本,这里用的v1.0,即branches分支的第一个版本),记得comment里面要填写信息,类似于 从trunk版本3创建分支到branches v1.0

 phpstrom使用svn创建分、支合并到发布流程_第6张图片

然后在PHPstorm里面检出branches v1.0代码

 phpstrom使用svn创建分、支合并到发布流程_第7张图片

点击添加一个 svn链接地址

 phpstrom使用svn创建分、支合并到发布流程_第8张图片

点击checkout,这时候就可以检出一份 branches v1.0的工作副本的代码到本地

 

二 合并分支到主干

我在branches v1.0上修改了一个文件 

 phpstrom使用svn创建分、支合并到发布流程_第9张图片

trunk上也在相同的位置修改了这个文件的内容,目的是为了创建一个冲突,一会测试下冲突解决

分别提交各自的修改

在合并之前首先update一下,保证是最新的内容

接下来开始合并

trunk下点击 vcs->merge from

 phpstrom使用svn创建分、支合并到发布流程_第10张图片

下方会有一个

 phpstrom使用svn创建分、支合并到发布流程_第11张图片

点击configure branches出现如下

 phpstrom使用svn创建分、支合并到发布流程_第12张图片

这里就是我在创建分支增加的 branches location,选中,点击 ok

点击merge from

phpstrom使用svn创建分、支合并到发布流程_第13张图片

选择从branches合并过来,再弹出的窗中选择 v1.0

 

 phpstrom使用svn创建分、支合并到发布流程_第14张图片

点击ok后这里出现这个对话框,第一个是合并全部,第二个是快速选择合并我们使用第三个 select with pre-filter 选择增量合并,即只合并分支中增加的

在弹出的对话框中,可以看到刚才我们修改提交的内容和版本号

 phpstrom使用svn创建分、支合并到发布流程_第15张图片

选中,点击 merge all

合并开始,弹出对话框提示有冲突,这时候需要解决冲突

 phpstrom使用svn创建分、支合并到发布流程_第16张图片

点击merge 出现了左右树,左面开始依次是 trunk修改部分,最终结果,branches修改部分,这里我们需要的是将branches的内容所以点击了branches的添加按钮 “<<” ,叉掉trunk的修改 “X

弹出 save and finish

 phpstrom使用svn创建分、支合并到发布流程_第17张图片

提示合并成功,提交我们的合并(commit)这里别忘了写上描述信息,是很重要的记录依据(当我们遇到冲突的时候 chang list会自动创建一个merge from branches的临时chang list)

 

当我们合并完成后记得删除掉这个changlist

这时候如果branches v1.0没有用了,我们可以删除掉

我们想要查看合并记录,可以使用 show history或者下面这个

 

 phpstrom使用svn创建分、支合并到发布流程_第18张图片

 

 

三 发布到正式环境

分支branches已经合并到了我们的主干trunk上,这时候我们可能需要发布到正式环境,在phpstrom中貌似没有 show log导出功能(或者是有,我没发现)

这时候可以使用 tortoisesvn工具,很简单,右击svn选择show log,很明显 6开始是我们合并进来的改动,如果有更多版本则按住ctrl点击选中

 phpstrom使用svn创建分、支合并到发布流程_第19张图片

选中除了/cookbook/trunk以外的所有文件,右击选择export导出到一个文件中

将导出的文件通过ftp工具上传到正式环境上即可,注意文件目录要一致!

 phpstrom使用svn创建分、支合并到发布流程_第20张图片

为什么要记录合并的版本号?

比如我们在branches v1.0上已经合并到了刚才的6版本后,我们还要继续做开发,当我们再次合并的时候只需要6-合并的版本即可

你可能感兴趣的:(版本控制系统)