一、背景

使用SVN进行版本管理时,一般的,我们的所有的开发都是基于trunk进行开发,当一个版本开发告一段落,经验证测试发布上线后,代码处于冻结状态,基于当前冻结的代码库,打一个tag进行管理,与发布的生产环境进行对应。

当新的功能点的开发任务开始,继续在trunk进行开发,此时,如果发现了生产环境问题,急迫需要修复,这时候就需要在对应当前生产的代码分支上修改。做法是:基于当前生产对应的tag,做相应的分支(branch)进行开发。

当新的功能开发完毕后,在发布之前,需要将之前分支上的修改合并到主干上,本文将详细描述使用Android Studio 对SVN的分支进行合并的过程。

二、步骤

1. 将项目切换到主干上,并把代码更新到最新,保证本地与SVN主干,完全一致。然后在上方菜单中,依次选择VCS --> Integrate Project...如图所示。也可以在项目上点右键,在弹出的菜单中选择Subversion -> Integrate Directory....

2. 在Source 1中选择主干的SVN地址,并选择当时分支分支时的版本号,本例是4909;在Source2中选择分支的地址,并在版本号处选择HEAD,表示把分支最新代码合并。然后在Try merge, but make no changes选项中打勾,在Depth中选择working copy。这样的配置是将分支最新代码与主干分出分支时的代码进行尝试比较。最后点“OK”,开始尝试合并,在下方会显示合并的结果.

3. 当确认尝试合并无问题后,再次重复上述合并步骤的界面,但在Try merge, but make no changes选项中取消打勾,然后点击“OK”,开始合并。

4. 当合并代码过程中出现文件冲突时,会弹出一个冲突列表。此时需要对冲突的文件进行一个个合并。选择一个冲突的文件,单击“Merge...”,在弹出的合并窗口中,会展示三个文件,左边是本地代码,中间是合并后的代码,右边是分支上的代码。IDEA已经将冲突的代码块标志出来,你只需要将左边和右边的代码往中间合并,然后查看中间的代码是否正确,若不正确,直接修改正确,最后点击下方的“Apply”,完成该文件的合并。

5. 合并动作完成后,在下方工具窗口“Version Control”--> Local Changes 标签页看到合并后的本地代码变更,可以选择其中的某个文件,然后按快捷键Ctrl+D或点左侧工具图标,查看文件的改动情况,在弹出的窗口左侧为合并之前的代码,右侧是合并之后的代码。

6.在确认修改的文件无误后,在“Version Control”--> Local Changes 标签页,在文件根文件夹“Default"上,单击右键,在弹出的菜单中,选择"Commit Changes"提交代码,在弹出的确认窗口中,会再次显示所有要提交的文件,会在文件复选项上打勾,在下方的Commit Message中填写上本次提交内容的描述信息。最后点击”Commit“,提交代码到SVN.

Android Studio 合并分支代码到主干的操作总结的更多相关文章

  1. svn 合并分支代码到主干

    1. eclipse 安装subclipse 2. 将主干trunk导入到eclipse中 3. 右键选择team-->合并,注意,去掉红色圈内的选项 4. next 选中select查找svn ...

  2. Android Studio Git 分支使用实践

    新公司有些项目是用的 Git,以前公司都是 svn,为了练手 Git,我个人 APP 用到了,但是仅简单的 git pull/push 的使用,并未用到 Git 精髓,只有当项目中用到,才会紧迫去全面 ...

  3. Android Studio Git 分支实践

    新公司有些项目是用的 Git,以前公司都是 svn,为了练手 Git,我个人 APP 用到了,但是仅简单的 git pull/push 的使用,并未用到 Git 精髓,只有当项目中用到,才会紧迫去全面 ...

  4. Android Studio环境下代码混淆+签名打包

    Android Studio环境下代码混淆+签名打包 作者 Mr_冯先生 关注 2016.08.21 01:10 字数 1040 阅读 734评论 5喜欢 34 注:本文使用的Android Stud ...

  5. Android Studio快捷键之代码提示

    相信很多人在用Eclipse的时候,很习惯的都会把Content Assist设置成.abcd...z,这样每次敲代码的时候都会有自动提示,写起代码来很方便.具体设置如图: 同时,Eclipse中也有 ...

  6. git 命令合并分支代码

    git 命令合并分支代码 对于复杂的系统,我们可能要开好几个分支来开发,那么怎样使用git合并分支呢? 合并步骤: 1.进入要合并的分支(如开发分支合并到master,则进入master目录) git ...

  7. Android Studio如何Format代码

    Android Studio如何Format代码 Reformat code Shift + CTRL + ALT + L (Win) OPTION + CMD + L (Mac)

  8. Android Studio(十一):代码混淆及打包apk

    Android Studio相关博客: Android Studio(一):介绍.安装.配置 Android Studio(二):快捷键设置.插件安装 Android Studio(三):设置Andr ...

  9. 使用TortoiseGit对android studio工程进行代码版本控制

    阅读下列文章时请保证你是否有以下工具: 1.Android Studio 2.TortoiseGit 和 msysGit 安卓工程版本控制哪些文件可以忽略 可以省略的文件如下: 目录 .gradle  ...

随机推荐

  1. iOS相关的ARM汇编

    一.iOS汇编1.真机:arm64汇编寄存器指令 堆栈2.模拟器:x86汇编 二.lldb (lldb)register read x0 (lldb)register read w0 (lldb)re ...

  2. MR汇聚工具步骤

    ---------------------------------MR汇聚工具步骤------------------------------------- 1.需要连上141服务器 用户:root ...

  3. ionic3自定义android原生插件

    一.创建一个android项目,编写插件功能,并测试ok,这里以一个简单的调用原生Toast.makeText为例. 1.新建android项目 2.编写插件类 package com.plugin. ...

  4. SQL Server数据库的兼容级别

    SQL Server 是Microsoft 公司推出的关系型数据库管理系统.具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行M ...

  5. Numpy and Matplotlib

    Numpy介绍 编辑 一个用python实现的科学计算,包括:1.一个强大的N维数组对象Array:2.比较成熟的(广播)函数库:3.用于整合C/C++和Fortran代码的工具包:4.实用的线性代数 ...

  6. vue项目部署到服务器

    1.配置config目录下index.js index: path.resolve(__dirname, '../dist/index.html'), assetsRoot: path.resolve ...

  7. js url参数解析获取

    function get_url_parm_list(str){ var params=str.substr(str.indexOf('?')+1); var param_list=[]; while ...

  8. css选择器的优先级算法

    1. 引言 浏览器CSS匹配顺序: 浏览器CSS匹配不是从左到右进行查找,而是从右到左进行查找. 比如#divBox p span.red{color:red;}, 浏览器的查找顺序如下: 先查找ht ...

  9. inet_pton, inet_ntop

    Linux下这2个IP地址转换函数,可以在将IP地址在“点分十进制”和“整数”之间转换而且,inet_pton和inet_ntop这2个函数能够处理ipv4和ipv6.算是比较新的函数了. inet_ ...

  10. php日志报错child exited with code 0 after seconds from start

    因为日志文件老是有这种提示: [27-May-2015 15:13:48] NOTICE: [pool www] child 3998 started [27-May-2015 15:13:59] N ...