Android studio 中使用svn


注:本文的Android Studio版本是 2.1.2,svn版本是:TortoiseSVN-1.9.4.27285-x64-svn-1.9.4.msi,如有的地方表示不同,可能是版本差异。

Android Studio 是 Google 公司目前支持的 Android 开发工具,它集成了许多强大的功能。比如常用的代码的版本控制系统(git,svn等)。本文先介绍svn的常用功能。

一、配置svn

1.安装带有command line功能的svn客户端,我是用的是TortoiseSVN。安装时必须自定义选择command line(即点击安装时红色X的那一个条目) 。

2.安装完成后,打开IDE的setting配置面板,选择 Version Control 下的 Subversion 

在右边 General 下的 Use command line client:右面的地址为你安装到本地的TortoiseSVN的下的svn.exe文件路径,如图所示:


 二、从svn 中导入项目

方法一:(当前页面为工作空间)

1. 在菜单栏选择 VCS --> Checkout from Version Control --> Subversion

2. 弹出Checkout from Subversion 对话框 ,选择“+”,在弹出的 New Repository Location 中输入项目所在的地址

3. 点击将要使用的url的左边箭头, 在弹出的Authentication Required 中输入用户名及密码

Save credentials 为是否记住密码 选择ok

4. 最后,点击 Checkout 就将svn中的项目检出到本地了。


2.


方法二:(当前页面为欢迎页面)

顺便说一下,怎么从工作空间进入到欢迎页面,在菜单栏选择 File --> Close Project.

1. 欢迎页面右侧,选择Check out from Version Control --> Subversion

2. 接下来的步骤同第一种方法

三、提交,更新

更新:

方法一:

点击工具栏中的更新图标,如图所示:

更新图标

在Update Project中选择 " ok "


方法二:

右键单击你要更新的文件或文件夹,选择 Subversion --> Update Directory...

在弹出的Update Project对话框中选择 “ ok ”。


Update/Switch to specific url: 

Use branch 后的 ... 表示选择需要更新的分支

URL 后的 ... 表示项目所在的选择url

选择 Update/Switch to specific revision 后,点击 ... 可以查看历史版本。

Depth 中的选项,这一部分是参考网上的资料,具体功能大家一起探索。通常我是默认 working copy。

提交:

方法一:点击工具栏的提交图标,如图所示:

提交图标

在弹出的Commit Changes对话框中:

左上部分,选择本次要提交的文件;

左下部分,主要是对本次提交内容的概述,便于版本管理;

右上部分,

Auto-update after commit :先更新后提交

keep files locked:把文件锁上,(即不想其他人修改这些文件的代码)

右下部分(在提交代码前),

Reformat code:重新格式化代码

Rearrange code:重新整理代码

Optimize imports:优化导入

Perform code analysis:执行代码分析[ 默认选择]

Check TODO(show all):检测需要修改的代码[显示所有默认选择]

clean up: 清除所有

Update copyright:更新版权

设置好你的选项之后,点击 Commit 完成提交。


方法二:

右键选中文件或文件夹,选择 Sunversion--> Commit Directory...


如果没有要提交的文件,会弹出


直接点击 " ok "。

四、解决代码冲突

代码冲突(本地和服务器均修改了同一个文件)有三种情况:

1. 服务器的代码为无效代码,可直接将本地代码覆盖服务器的代码。

2. 本地代码修改为无效代码,即不需要传到服务器的情况,将服务器的代码直接覆盖本地代码。

3.本地代码和服务器的代码均为有效代码,将本地代码和服务器的代码合并。


当你选择merge合并时,会弹出代码合并对照窗口,一共有三个屏,左右两侧时你和服务器不同的代码并高亮显示不同的部分,带有箭头和叉号,通过点击箭头将两边冲突的代码添加到中间的合并区域中去,点击叉号则辨识放弃那一段代码,待所有冲突处理完成后merge就成功了。


五、将本地代码上传至svn服务器

在菜单栏下选择 VCS-->Import into Version Control-->Import into Subversion...

在弹出的 Import into Subversion 对话框中,点击 “+”添加路径 ,点击“-”删除路径

然后选择你要提交的分支,点击“ Import” 即可。


六、添加忽略文件

在Android Studio中一般建议忽略的文件,这个过程在导入项目之前:

-.idea文件夹

-.gradle文件夹

- 所有的build文件夹

- 所有的.iml文件

-local.properties文件

这就需要我们将这些问价添加到忽略文件中。 

步骤:

File-->Version Control-->Ignored Files

添加忽略文件:点击右侧的  蓝色“+”,在弹出的对话框中选择:


对话框中的选项:

Ignore specified file:忽略指定的单个文件;

Ignore all files under:忽略指定的文件夹下的所有文件;

Ignore all files matching:忽略匹配文件(如:在编辑框中写入 *.txt ",即忽略所有的txt文件)

删除添加的文件:选中你要取消的忽略文件,点击右侧的 红色“-”即可。

七、在svn使用中的不同颜色

1.直接在Android Studio 中提交文件

在Android Studio 中的某个项目关联到svn中后,如果你所修改的文件(与资源库中不同的文件),文件名会以蓝色显示。提交的时候直接选择蓝色文件即可。新创建的文件还没有与svn关联,文件名称是红色的,必须先将文件与svn资源库关联,才能进行提交等操作,(右键点击选择 Subversion 然后选择 Add As VCS... 即先将文件与资源库关联)然后文件名变成绿色,就可以进行提交,更新等操作。

2.通过客户端提交文件:

在关联svn的文件夹下的文件:

红色(感叹号):表示本地文件与资源库中的文件不同。

绿色(对号):表示本地文件同资源库文件相同。

蓝色(问号):忽略的文件。

在提交文件时,弹出文件对比页面,页面右侧项目结构中标志为绿色的部分为本地文件与服务器文件不同的地方。

八、创建svn分支

1.项目右键,SubVersion->Branch or Tag...

2.在弹出的对话框里面,Copy To的菜单下面的Base URL里面选路径,点下面的加号,确定分支的路径,点击OK

3.然后写个注释(comment),点击OK,分支创建完毕。

4.比较的时候,项目右键,SubVersion->Compare With branch...比较合并



九、恢复资源库文件

当文件修改了之后,发现修改的无效,需要恢复资源库最后一个版本的内容,在所选文件单击右键,选择 Subversion ,再选择Reset ,即回到了资源库中的版本。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,117评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,328评论 1 293
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,839评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,007评论 0 206
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,384评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,629评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,880评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,593评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,313评论 1 243
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,575评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,066评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,392评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,052评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,082评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,844评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,662评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,575评论 2 270

推荐阅读更多精彩内容