在AndroidStudio中开发版本控制,除了Git就是SVN,和Eclipse不同,Android Studio没有提供单独的插件,只能和SVN客户端关联使用。
下载地址:https://tortoisesvn.net/downloads.html
注意:在下载页的下面,有不同的语言包,可以选择下载一个中文语言包。下载完成后,点击安装 TortoiseSVN 与 LanguagePack语言包 进行安装即可。
安装SVN时必须安装command line 功能,只有安装带有 command line 功能的 SVN 客户端,AndroidStudio才能使用。安装SVN时需要用户自定义选择 command line ,默认是不会自动安装的。
SVN安装完成后,打开 Android Studio 中的Subversion配置面板(File——Setting…——Version Control——Subversion):
选中Use Command Line Client ,选择浏览到你本地安装 TortoiseSVN 的 svn.exe 文件路径:
.idea文件夹
.gradle文件夹
所有module中的build文件夹(build、app/build、baseLibrary/build等)
local.properties文件
File——Settings…——Version Control——Ignored Files
添加忽略的文件
添加忽略的文件
添加忽略的符合匹配规则的文件
此时只是将当前项目跟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相关操作按钮里的commit就行了(上图SVN相关操作按钮左起第二个按钮)
Android Studio会先对当前代码进代码分析,如果有错误或者警告会弹出如下的框,如果有错误冲突等需要解决后再提交,如果是警告可以忽略;
第一次将整个代码提交到SVN服务器时时间有可能很长,请耐心等待,之后再创建项目时就不会这么慢了。
File——New——Project from Version Control——Subversion
选择本地目录:
VCS——Browse VCS Repository——Browse Subversion Repository
当前项目关联svn服务器后,在VCS–>Import Into Version Control,会发现只有Import Into Subversion选项,并没有Share Project(Subversion)这个选项。
在Project模式下有个.idea文件夹,找到vcs.xml文件,把里面的vcs=“svn"改为vcs=”"
改完之后,会发现vcs.xml文件已经消失了。
去硬盘的项目目录中,把.svn文件(此文件为隐藏文件)全部删除
这时就会发现Share Project选项出来了。
更换jdk版本即可。
如果无法修改,那么可以取消与SVN的关联或者删除本地硬盘的项目,重新checkout项目。
错误:方法的注释中的参数名命名规则不严谨,不能使用系统自带变量名,如:Date,date,assets
解决方案:换个名称
错误:方法名的注释参数名和方法的实际参数名不一致
现象:
解决方案:保持一致即可
错误:代码中控制显示/隐藏只能使用View.VISIBLE,不能使用实际值
现象:
解决方案:换成常量值,将0或者1修改为View.VISIBLE或者View.GONE
错误:Error:(128, 23) Expected resource of type id
现象:
解决方案:在报错位置所在的类上面添加一句话 @SuppressWarnings(“ResourceType”)
手动修改自己的java文件,将两个人的的Java文件合并到一个文件,使用svn中的标记冲突已解决
在使用SVN更新服务器上的代码时,有时会弹出代码冲突的对话框,问你是否进行合并,并提供了三种合并方案:accept yours(使用你的)、accept theirs(使用别人的)和merge(合并);
前两个都是进行的覆盖操作,就不多做解释了;当你选择merge合并时,会弹出代码合并对照窗口,一共有三个屏,左右两侧时你和服务器不同的代码并高亮显示不同的部分,带有箭头和叉号,通过点击箭头将两边冲突的代码添加到中间的合并区域中去,点击叉号则辨识放弃那一段代码,待所有冲突处理完成后merge就成功了。