Android studio 上SVN的使用和配置
1.Android studio 安装
中文组官网:http://www.android-studio.org/
常见问题参考:
分支冲突合并 http://blog.csdn.net/tearsmo/article/details/6778143
http://blog.sina.com.cn/s/blog_60f823dd01011ccj.html
http://www.360doc.com/content/11/0614/11/621500_126833581.shtml
SVN和GIT比较:http://blog.csdn.net/a117653909/article/details/8952183
GIT使用参考: git-for-windows
《git - 简易指南》
《Git - Book》
SVN冲突问题:SVN版本冲突解决详解
http://blog.csdn.net/windone0109/article/details/4857044
切换项目视图:切换到Project下可以看到整个项目的目录结果 Android目录只关注APP目录结构即可
DDMS
http://www.it165.net/pro/html/201405/13843.html
2.VCS配置
VCS使用(SVN)subversion
版本工具比较
http://www.cnblogs.com/greenmile/archive/2010/04/20/VCS.html
SVN安装 参考 windows SVN搭建
下载地址
服务器端:http://subversion.apache.org/packages.html
TortoiseSVN客户端官网下载地址:http://tortoisesvn.net/downloads.html
服务端配置:安装SVN服务端,添加仓库,添加用户,配置仓库访问权限即可使用
客户端使用说明:
使用资源管理器右键进行操作:创建一个文件夹用来存放仓库项目右键checkout即可
重新定位需要选择服务器地址
SVN操作简介
http://www.cnblogs.com/jx270/archive/2013/03/04/2943595.html
http://www.it165.net/pro/html/201404/11412.html
注意事项:使用SVN时每次都是先update,后commit。
Checkout SVN上的项目
选择subversion
导入项目到SVN服务器,
Import into 选择subversion
点击 添加服务地址例如
浏览SVN服务器上的项目文件夹
SVN仓库会显示文件列表
其他说明
单文件 签入当文件,右键subversion Add
文件红色:表示文件没有添加到服务器
绿色:表示没有更新新的修改到服务器
普通黑色:表示和服务器同步
文件夹颜色说明
参考 :http://blog.csdn.net/niu_hao/article/details/6774471
黄色感叹号(有冲突): --这是有冲突了,冲突就是说你对某个文件进行了修改,别人也对这个文件进行了修改,别人抢在你提交之前先提交了,这时你再提交就会被提示发生冲突,而不允许你提交,防止你的提交覆盖了别人的修改。要解决冲突,如果你确认你的修改是无效的,则用TSVN还原你的修改就行了;如果认为你的修改是正确的,别人的提交是无效的,那么用TSVN先标记为“解决冲突”,然后就可以提交了;如果你认为你的修改和别人的修改都有一部分是有效的,那么你就把别人的修改手动合并到你的修改中,然后使用TSVN标注为“解决冲突”,然后就可以提交了。进入文件夹,寻找有黄色感叹号的文件,这些文件就是发生冲突的地方,根据实际情况处理冲突 米字号(有本地修改代码): --这是说明你有未提交的本地代码。 问好(新加入的资源): --这说明该文件是项目中新增文件资源,新增资源可以是文件、图片、代码等。
红色感叹号(本地代码与库没有保持一致): --这说明本地代码跟库上没有保持一致,如果用户想修复,可以将带红色感叹号图标文件删除,直接update即可。 灰色向右箭头(本地修改过) --本地代码没有及时上库。 蓝色向左箭头(SVN上修改过) --记得更新代码后修改,提交前跟svn对比习惯。 灰色向右且中间有个加号的箭头(本地比SVN上多出的文件) --修改完记得跟svn保持一致 蓝色向左且中间有个加号的箭头(SVN上比本地多出的文件) --删除该文件后,再次更新,将svn上文件全部更新下来。 灰色向右且中间有个减号的箭头(本地删除了,而SVN上未删除的文件) --也就是说你删除确认后,一定要记得上库,跟svn保持一致 蓝色向左且中间有个减号的箭头(SVN上删除了,而本地未删除的文件) --比对svn库上代码,确定需要删除后,更新svn(删除无用代码)。 红色双向箭头(SVN上修改过,本地也修改过的文件 ) --这个表示本地和svn上都修改过,最好就是把本地修改合并到svn,修改代码前最后先更新。
文件状态说明:
单个文件签入签出操作:右键subversion
Add,添加到服务器
Commit:提交
Update:更新,获取新版本
Integrate:合并
注意:SVN和VSS不同签入前如果文件被其他人修改需要比较版本如何其他修改有效需要合并签入
整个项目更新提交:Commit ,Update
-
一、Android Studio配置SVN
Android Studio关联配置SVN很简单,在Settings里面,找到Version Control->Subversion;在这个页面的控制面板中的General中将Use command line client打勾勾选上,然后浏览本地的SVN安装目录,选到"\svn.exe"即可;
在Use command line client下面还有一个Use system default Subversion configuration directory,这个默认是勾选上上的,这个是svn相关配置信息的路径,保留默认路径就行,目前没有发现需要修改什么东西;以上操作如下图:
<img src="https://pic4.zhimg.com/75ae00d25fb927985d3566f727e080c3_b.png" data-rawwidth="1038" data-rawheight="701" class="origin_image zh-lightbox-thumb" width="1038" data-original="https://pic4.zhimg.com/75ae00d25fb927985d3566f727e080c3_r.png">
二、Android Studio项目关联SVN资源库及添加忽略文件
在Android Studio中新创建一个Android项目,成功后我们先来添加要忽略的文件;在Android Studio中添加忽略文件同Eclipse有所不同,在Eclipse上我们什么时候添加忽略文件都可以,但是在Android Studio中只有在未关联SVN之前添加忽略文件才有效(试了好多次才将忽略文件忽略成功啊!)。Android Studio添加忽略文件同样是在Settings->Version Control(跟版本控制有关的设置都在这个目录下)下的Ignored Files里,点击加号进行忽略文件的设置,Android Studio默认给出了三种忽略方式,供开发者进行选择:忽略指定的文件、忽略文件夹下所有文件和忽略符合匹配规则的文件;如图所示:<img src="https://pic3.zhimg.com/3abf586a554dc9faedb1f3bac326fbae_b.png" data-rawwidth="1038" data-rawheight="701" class="origin_image zh-lightbox-thumb" width="1038" data-original="https://pic3.zhimg.com/3abf586a554dc9faedb1f3bac326fbae_r.png">
点击右侧的“+”进行添加,“-”删除;Android Studio创建的Android项目一般需要忽略.idea文件夹、.gradle文件夹、所有的build文件夹、所有的.iml文件及local.properties文件。
忽略完文件后,我们进行项目同SVN的关联,选择VCS->Import into Version Control->Share Project(Subversion);这里说明一点,在Import into Version Control下有Import into Subversion和Share Project(Subversion)两个选项:第一个是直接将项目导入到SVN服务器上,但是这样做本地的项目同SVN服务器没有建立起关联,在导入后项目所有的文件都会变成红色,而且在要提交到SVN服务器时会提示项目不是SVN下的工作副本;第二个是将Android Studio当前项目同SVN服务器关联起来,但是并没有将项目导入到SVN服务器上,需要在完成建立连接后再次提交项目到SVN服务器。两种方式都可以实现将本地代码提交到SVN服务器的功能,但是步骤有所不同,先来完成第二种方式的项目同SVN的关联及代码提交,第一种貌似不正规,之后再说;下图既是第二种方式将本地项目同SVN进行关联的:<img src="https://pic3.zhimg.com/d192e4e066db44c21cf0bbd4e5519e66_b.png" data-rawwidth="1071" data-rawheight="531" class="origin_image zh-lightbox-thumb" width="1071" data-original="https://pic3.zhimg.com/d192e4e066db44c21cf0bbd4e5519e66_r.png">
之后会弹出选择要分享的SVN地址及其他选项,如下图:<img src="https://pic4.zhimg.com/9d3318455907d64cb362be57239504eb_b.png" data-rawwidth="479" data-rawheight="670" class="origin_image zh-lightbox-thumb" width="479" data-original="https://pic4.zhimg.com/9d3318455907d64cb362be57239504eb_r.png">
在Define share target下选择第二个可以再trunk下创建你当前项目的文件夹,相应的第一个选项是直接将整个文件都放到trunk文件夹下,第三个在项目文件夹下有创建了一个trunk文件夹,因此建议使用第二中方式;选择完成后点击Share就可以了,会弹出让你选择SVN工作副本的格式化版本(jdk版本),如下图:<img src="https://pic1.zhimg.com/8d68fff6f283a0e6fe87c9b9ff4a48ac_b.png" data-rawwidth="812" data-rawheight="379" class="origin_image zh-lightbox-thumb" width="812" data-original="https://pic1.zhimg.com/8d68fff6f283a0e6fe87c9b9ff4a48ac_r.png">
建议选择1.8format,我之前选择了其他的试了一下,发现项目总会报出一下错误,原因暂时未发现,就先这样选择吧;点击OK等待一会就能创建本地项目同SVN服务器的关联了;成功后悔自动刷新本地的项目,待项目里的内容变成绿色的即表示已经成功了,如下图所示:<img src="https://pic3.zhimg.com/339bc1ad0ab4ebcdd6fe938dde3bb886_b.png" data-rawwidth="978" data-rawheight="480" class="origin_image zh-lightbox-thumb" width="978" data-original="https://pic3.zhimg.com/339bc1ad0ab4ebcdd6fe938dde3bb886_r.png">
到目前为止只是将项目同SVN服务器建立了联系,并没有将代码提交到SVN服务器上去;如何提交呢,其实很简单,只需点击SVN相关操作按钮里的commit就行了(上图SVN相关操作按钮左起第二个按钮);<img src="https://pic3.zhimg.com/d16f608e9c18c66f8636c9d97345da72_b.png" data-rawwidth="1173" data-rawheight="1046" class="origin_image zh-lightbox-thumb" width="1173" data-original="https://pic3.zhimg.com/d16f608e9c18c66f8636c9d97345da72_r.png">
点击Commit后Android Studio会先对当前代码进代码分析,如果有错误或者警告会弹出如下的框,如果有错误冲突等需要解决后再提交,如果是警告可以忽略(同Eclipse相同);第一次将整个代码提交到SVN服务器时时间有可能很长,请耐心等待,之后再创建项目时就不会这么慢了。<img src="https://pic3.zhimg.com/60d295e5623fcb407fc517916aa3eeea_b.png" data-rawwidth="316" data-rawheight="187" class="content_image" width="316">
成功后我们就完成了新建项目同SVN的关联及导入项目到SVN服务器上了。
关于第一种方式,在将本地代码导入到SVN服务器后将本地代码删除,然后从SVN服务器上将之前提交的代码更新下来,这样一来也可以同SVN建立关联正常进行开发;第一种方式和第二种方式的区别就在于:第一种是将代码先提交到SVN服务器上,然后再从SVN服务器上更新下来(本地项目同SVN服务器建立联系);第二种是先同SVN服务器监理联系,然后将代码提交到SVN服务器上去。建议使用第二种方式进行新项目的SVN关联。
三、Android Studio SVN代码冲突的解决
关于代码冲突解决的问题,首先要感谢一下知友ShinChven的回答建议。在使用SVN更新服务器上的代码时,有时会弹出代码冲突的对话框,问你是否进行合并,并提供了三种合并方案:accept yours(使用你的)、accept theirs(使用别人的)和merge(合并);
<img src="https://pic2.zhimg.com/bcfe7bf54eb872e71b94c35bcfbe405d_b.png" data-rawwidth="610" data-rawheight="537" class="origin_image zh-lightbox-thumb" width="610" data-original="https://pic2.zhimg.com/bcfe7bf54eb872e71b94c35bcfbe405d_r.png">前两个都是进行的覆盖操作,就不多做解释了;当你选择merge合并时,会弹出代码合并对照窗口,一共有三个屏,左右两侧时你和服务器不同的代码并高亮显示不同的部分,带有箭头和叉号,通过点击箭头将两边冲突的代码添加到中间的合并区域中去,点击叉号则辨识放弃那一段代码,待所有冲突处理完成后merge就成功了。<img src="https://pic2.zhimg.com/35c1911d7ec78302853050d7c7a02f45_b.png" data-rawwidth="640" data-rawheight="503" class="origin_image zh-lightbox-thumb" width="640" data-original="https://pic2.zhimg.com/35c1911d7ec78302853050d7c7a02f45_r.png">
收藏•没有帮助•举报•作者保留权利 收起
1、checkout from subversion
<img src="https://pic3.zhimg.com/48b00247d9b7ac321b805f2eb958359a_b.png" data-rawwidth="324" data-rawheight="407" class="content_image" width="324">
2、项目检出以后open build.gradle 打开工程
3、工程打开以后在顶部VCS 里面enable version control 选subversion
提交到服务器
VCS - import into subversion
Android studio 上SVN的使用和配置相关推荐
- 【Android Studio安装部署系列】十九、Android studio使用SVN
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 在AndroidStudio中开发版本控制,除了Git就是SVN,和Eclipse不同,Android Studio没有提供单独的插 ...
- android studio 使用svn版本控制完全解析
作者:夏海亮 链接:https://www.zhihu.com/question/32298079/answer/56010423 来源:知乎 著作权归作者所有,转载请联系作者获得授权. 通过这两天对 ...
- 在Android Studio上进行OpenCV 3.1开发
在Android Studio上进行OpenCV 3.1开发 发布于 2016年1月27日 作者: John Hany 5,466次阅读 2016.07.08更新:增加Android Studio 2 ...
- Android studio断开svn连接
2019独角兽企业重金招聘Python工程师标准>>> 取消android studio与svn的关联 在日常android开发中,我们可能会碰到这么一个场景:将本地的代码share ...
- Android Studio下项目构建的Gradle配置及打包应用变体
Gradle简介 Gradle是一个自动化构建工具,采用Groovy的Domain Specific Language(领域特定语言)来描述和控制构建逻辑.具有语法简洁.可读性强.配置灵活等特点. ...
- Android Studio 上传代码到Gitee
最近在学校里做Android的项目,一直不会通过Android Studio上传代码到Gitee,经过查阅博客和文章,现在将方法总结如下: 一.安装Git 1.下载Git 可在Git官网下载 http ...
- Android studio使用svn创建分支及合并分支----终极图解
Android studio使用svn创建分支及合并分支这里面涉及的内容比较多,比较复杂,大家要仔细看. 1,创建本地svn仓库(主干与分支现在都是空的) 2,创建一个安卓项目,这大家应该都会吧[My ...
- Android Studio上调试手机数据库(SQLite)
在 Eclipse 时代,调试 SQLite 大都是在DDMS中,data/data/目录下找到db将数据库文件,将文件导出到电脑,然后再用软件打开查看.现在在 Android Studio,是不是可 ...
- Android Studio上方便使用butterknife注解框架的偷懒插件Android Butterknife Zelezny
首先提下ButterKnifey已经更新到版本7.0.1了,现在注解已经不叫@InjectView了,而叫@Bind,感觉更贴合语义.同时注册的方式也从 ButterKnife.inject(this ...
最新文章
- 反向词典_根据描述查找词语
- python怎么画形状_python – matplotlib – 如何绘制随机导向的矩形(或任何形状)?...
- typedef 深入剖析
- 用SQL语句向表格中插入数据
- 性能提升一个数量级,大杀器来了!| 文内福利
- qt提升控件之后,编译报错
- linux密码带星号,Linux下实现输入密码以星号显示
- steam夏日促销悄然开始,用Python爬取排行榜上的游戏打折信息
- IT經理出招 電腦耗電減少
- spring中的aware接口
- WinAPI: CreatePen - 建立画笔
- Python使用matplotlib可视化模拟商场促销价格关系折线图
- Chrome安装Octotree插件
- 【云IDE】CSDN云IDE的初探以及实战操作
- 隆重揭晓 | Google Play 2018 年度大赏,中国开发者再领风骚
- Excel编程环境搭建
- Android 开发多摄像头 API
- 查找文件中每行第二个单词_NOIP训练营内部试题快速记单词
- grid选择框 jeeplus ani框架
- 华为计算机单机pc游戏软件,华为应用市场pc端
热门文章
- pr 是什么——可以做什么
- Python脚本在win10下开机自启动
- Leonard代码随想录算法训练营第二天| 977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II。
- 2017c语言 形成性考核,[2017年电大]c语言程序设计课程形成性考核任务样例.doc
- 图php图片怎么下载成动态图,怎么把动图和图片合在一起 gif动图与jpg静态图片上下拼接...
- 【2019春招准备:108.storm(3)】
- android 图片 生成视频,照片制作成视频的方案有吗?如何视频安卓手机视频编辑器将手机里的照片制作成视频...
- 【Kuangbin数论】阿拉丁和飞毯
- InnoSetup打包工具使用;C#打包工具;VB打包工具;EXE打包工具;C++打包工具
- 【第二部分 图像处理】第4章 Opencv图像处理高阶【2毛玻璃滤镜】