android svn修改代码_Android Studio 使用SVN 主干和分支合并代码

SVN简单介绍

SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。

其它文章

下面我们要操作的有

新建一个as项目

忽略提交文件

提价至SVN服务器

创建分支

切换分支

合并分支

解决代码冲突

版本回滚

新建一个as项目

在本地某个地方新建一个as项目,为了测试我起名为TrunkSVNDemo。

新建一个as项目

忽略提交文件

点击 File->Settings->Version Control ->Ignored Files->右侧+号->弹出选择框

图中1、2、3 忽略选项解释:

1: Ignore specified file 忽略文件

2: Ignore all files under 忽略文件夹

3: Ignore all files matching 忽略匹配规则文件

这是我忽略的配置内容:

File: local.properties

Directory: .gradle/

Directory: .idea/

Directory: build/

Mask: *.iml

添加忽略文件,需要添加的忽略文件:

1、.idea 文件夹,此文件夹是用来保存开发工具的设置信息。

2、.gradle 文件夹,此文件夹是用来保存gradle的依赖信息。

3、所有的 build 文件夹,build文件夹是用来保存编译后的文件目录。

4、所有的 .iml 文件,是用来保存开发工具信息。

5、local.properties 文件,是用来保存项目依赖信息。

忽略提交文件

提价至SVN服务器

忽略完文件后,我们进行项目同SVN的关联,VCS->Import into Version Control->Share Project(Subversion) 见下图。

提价至SVN服务器

选择SVN服务器地址,如果之前没有使用过可以点击头部加号添加SVN地址。

Define share target选择共享目标,一般选择第二个就行。

1.8 format 选择1.8

关联SVN服务器地址

选择1.8format

提交至SVN服务器

上传成功后可以清楚看到忽略的文件颜色和没有忽略文件的颜色有差别,并且AS状态栏多了两个按钮,一个是更新按钮一个是提交按钮。见下图

关联成功后

在trunk主支下的MainActivity下写一行代码, String trunk = "这是trunk内容";,然后点击提交按钮上传到服务器上。

Commit

创建分支

将项目切换至Project目录,选中项目后点击右键,依次选择Subversion->Branch or Tag。可根据需要选择拷贝源、新分支目录、修改分支项目文件名等。如下图所示:

切换分支

创建分支成功后,我们从本地磁盘SVN项目下找到分支路径右击SVN Update一下,就可以看到分支项目了,如下图:

拉取分支项目

在主支下再写一行代码提交,注意每次提交代码前都先Update一下。

主支再一次提交代码

AS中切换分支,不管是主支切换分支 还是分支切换主支,操作都是一样的。

1.点击Update

2.勾上Update/Switch to specific url

3.点击Use banch的右边省略号选择 分支||主支 项目名字

4.点击URL右边省略号选择SVN 分支||主支 地址

切换分支

点击URL右边省略号选择SVN 分支||主支 地址,如果主支切分支就选择分支项目,如果是分支切主支就选择主支项目。

选择路径

切换分支后可以看到代码中只有一行代码了,这个是分支的代码。

合并分支

分支添加一行代码 String age = "18"; 提交SVN。

提交分支代码

然后再切换到主支下,然后右击项目--Subversion--Integrate Directory

Integrate Directory

由于这里面比较复杂我特意用12345标记起来再一一讲解。

1.告诉我们合并的规则是从Source2合并到Source1中,至于你是想 分支合并到主支 还是主支合并到分支只要规则对就行。

2.这里就是刚说的第一步中的Source1和Source2,右边的省略号就是选择SVN地址的。

3.Specified是来指定版本的,警告:合并时,Revision默认选中的都是HEAD(即:最新版),此时若点击OK,主干新创建的类会被删除,主干和分支同时修改的类会被分支覆盖,主干中的文件及其内容将变成和分支一模一样。显然大多时候这并不是我们想要的,我们需要保留主干的新增文件,同时合并分支的改动。这时主干(即:Source 1)的 Revision就不应该是最新版 HEAD,而是之前我们所说的 创建分支前最后一次提交修改时,该操作所对应的 Revision。

4.这就是上步说的选择版本号,创建分支前最后一次提交修改或者上一次合并代码时,该操作所对应的 Revision。

5.HEAD就是最新的版本。

选择合并版本

解决代码冲突

当分支和主支同时修改一个类时,合并时就会出现这种代码冲突,此时我们有三种选择。

1:以自己的版本为准。 2:以他的版本为准。3:点击合并代码

Merge合并代码

回退版本

在AS上点击更新按钮,选择Update Switch to specific revision版本号,然后点击ok回退。

选择回退版本号

谢谢大家的点评

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值