版权声明:本文为HaiyuKing原创文章,转载请注明出处!
概述
在AndroidStudio中开发版本控制,除了Git就是SVN,和Eclipse不同,Android Studio没有提供单独的插件,只能和SVN客户端关联使用。
SVN客户端的下载安装
下载
下载地址:https://tortoisesvn.net/downloads.html
注意:在下载页的下面,有不同的语言包,可以选择下载一个中文语言包。下载完成后,点击安装 TortoiseSVN 与 LanguagePack语言包 进行安装即可。
安装
安装SVN时必须安装command line 功能,只有安装带有 command line 功能的 SVN 客户端,AndroidStudio才能使用。安装SVN时需要用户自定义选择 command line ,默认是不会自动安装的。
剩下的就是更改安装目录,一路Next。在这里就不多讲了。
Android Studio关联SVN客户端
SVN安装完成后,打开 Android Studio 中的Subversion配置面板(File——Setting...——Version Control——Subversion):
配置SVN的路径
选中Use Command Line Client ,选择浏览到你本地安装 TortoiseSVN 的 svn.exe 文件路径:
如果输入框最右侧有个浏览的按钮没有显示出来,那么滑动底部的滚动条即可。
提交代码到SVN
添加忽略文件
Android Studio创建的Android项目,必须先来添加要忽略的文件,再上传SVN,一般需要忽略以下内容:
.idea文件夹
.gradle文件夹
所有module中的build文件夹(build、app/build、baseLibrary/build等)
所有的.iml文件
local.properties文件
File——Settings...——Version Control——Ignored Files
添加忽略的文件
添加忽略的文件夹
添加忽略的符合匹配规则的文件
最终效果:Android Studio3.0.1版本新建的项目运行后不会显示项目的build目录了。所以跟低版本相比较,少了项目build目录的忽略。
将项目同SVN服务器关联起来
此时只是将当前项目跟SVN服务器的目录关联在一起,并没有将项目提交到SVN服务器上,需要在完成建立连接后再次提交项目到SVN服务器。
VCS——Import into Version Control——Share Project(Subversion)
选择要关联的SVN地址及其他选项
在Define share target下
第一个选项是直接将整个文件都放到trunk文件夹下,
第二个选项可以再trunk下创建你当前项目的文件夹,
第三个选项在项目文件夹下有创建了一个trunk文件夹,
因此建议使用第二种方式;
第一次关联SVN服务器,需要登录:
选择SVN工作副本的格式化版本(jdk版本)
选择1.6还是1.8?【网上一般说的是选择1.8比较好,但是个人使用过程中,大部分是选择1.6,可能和服务器的svn版本(较低的话选择1.6,较高的话选择1.8)有关系吧】。
在这里可以先选择一个,如果上传代码的时候出现了Android Studio的SVN Performing VCS Refresh/Commit 长时间不结束的问题,那么则重新设置即可。
点击OK等待一会儿,就能创建本地项目同SVN服务器的关联了,成功后会自动刷新本地的项目,待项目里的忽略内容变成绿色的即表示已经成功了,如图:
同时,操作栏出现的svn操作按钮:提交、更新
此时点击VCS菜单,出现了Subversion选项
项目鼠标右键,也出现了Subversion选项
提交代码到svn服务器
其实很简单,只需点击SVN相关操作按钮里的commit就行了(上图SVN相关操作按钮左起第二个按钮)
Android Studio会先对当前代码进代码分析,如果有错误或者警告会弹出如下的框,如果有错误冲突等需要解决后再提交,如果是警告可以忽略;
第一次将整个代码提交到SVN服务器时时间有可能很长,请耐心等待,之后再创建项目时就不会这么慢了。
含有错误,不能提交!!
没有错误,可以提交!!
Checkout SVN上的项目
File——New——Project from Version Control——Subversion
选择本地目录:
浏览SVN上的内容
VCS——Browse VCS Repository——Browse Subversion Repository
查看svn的地址
查看svn提交日志
查看svn提交日志涉及的文件
Android Studio取消与SVN的关联/解决找不到Share Project(Subversion)的问题
当前项目关联svn服务器后,在VCS-->Import Into Version Control,会发现只有Import Into Subversion选项,并没有Share Project(Subversion)这个选项。
在Project模式下有个.idea文件夹,找到vcs.xml文件,把里面的vcs="svn"改为vcs=""
改完之后,会发现vcs.xml文件已经消失了。
去硬盘的项目目录中,把.svn文件(此文件为隐藏文件)全部删除。
这时就会发现Share Project选项出来了。
解决Android Studio的SVN Performing VCS Refresh/Commit 长时间不结束的问题
更换jdk版本即可。
如果无法修改,那么可以取消与SVN的关联或者删除本地硬盘的项目,重新checkout项目。
提交svn时AS对当前代码进代码分析提示的错误与警告
错误:方法的注释中的参数名命名规则不严谨,不能使用系统自带变量名,如:Date,date,assets
现象:
解决方案:换个名称。
错误:方法名的注释参数名和方法的实际参数名不一致
现象:
解决方案:保持一致即可。
错误:代码中控制显示/隐藏只能使用View.VISIBLE,不能使用实际值
现象:
解决方案:换成常量值,将0或者1修改为View.VISIBLE或者View.GONE
错误:Error:(128, 23) Expected resource of type id
现象:
解决方案:在报错位置所在的类上面添加一句话@SuppressWarnings("ResourceType")
警告:类的注释参数名是中文
现象:
解决方案:换成英文
参考资料
Android Studio取消与SVN的关联/找不到Share Project(Subversion)
Android Studio的SVN Performing VCS Refresh/Commit 长时间不结束
Androidstudio下打包apk提示Error: Expected resource of type id [ResourceType]解决办法