SVN管理Android项目(以Eclipse为例 )

                                                                                               SVN版本控制

一、简介、下载

SVN是版本管理工具。

服务端:VisualSVN-Server-3.4.2-win64

客户端:TortoiseSVN-1.9.2.26806-x64-svn-1.9.2

下载:https://pan.baidu.com/s/1YoMPblPJWif703-59JfpJQ

团队开发,从SVN服务端拉项目  使用TortoiseSVN   在桌面右击,SVN Checkout  选择存放路径

AndroiStudio配置忽略

   .idea文件夹、
    .gradle文件夹、
    所有的build文件夹(Directory:build/和Directory:app/build/)、
    所有的.iml文件(Mask:*.iml)
    及local.properties文件。

android studio中断开SVN连接,并彻底清理项目中的.svn文件
        打开我们的工程目录,定位到.idea目录下,找到vcs.xml使用记事本打开, 
    将VCS=“svn”改为VCS=“”即可 
        然后我们再使用android studio工具栏中得VCS工具即可重新share到subversion了。
        然后,彻底清理项目中的 .svn 文件:
        经过第一步处理以后,虽然使项目断开了SVN连接,但是项目中的 .svn文件并未
    清理掉,这个可能会给项目再次上传到SVN造成严重问题。
    步骤如下:
        1、在桌面建立一个文本文件,取名为clean-svn-folders.reg(扩展名由txt改为reg)
    ,内容如下:
        Windows Registry Editor Version 5.00

        [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN] 
        @="Delete SVN Folders"

        [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN\command] 
        @="cmd.exe /c \"TITLE Removing SVN Folders in %1 && COLOR 9A && FOR /r \"%1\" %%f IN (.svn) DO RD /s /q \"%%f\" \""

    保存之后,双击这个reg文件(注:双击注入时有些杀毒软件会报木马,忽略即可)。
        2、然后找到你需要断开连接的文件夹,右键点击找到“Delete SVN Folders”的
    选项,点击之后,既可以删除这个文件夹下所有的.svn文件了。即断开了和SVN服务
    器的连接

二、SVN配置

1、步骤

新建Repository Create new repository

2、安卓Eclipse 添加SVN插件:(通过链接添加)

菜单栏Help -> Install New Software -> Work with

MyEclipse添加插件(通过链接添加)

方法一:Help -> Install from... site -> Work with -> Name

方法二:

步骤1: Windows -> 首选项 -> General -> Capabilities -> 勾选Classic Update -> 点应用、确定

步骤2:菜单栏Help -> 点击software那项 -> Work with -> Name

3、ADT插件
步骤1:在Eclipse安装目录dropins\添加ADT插件
步骤2:Window -> Customize Perspective -> Shortcuts -> 勾选Android Application Project


三、SVN常用操作

 

总述:Eclipse操作在Team下

 

文件夹操作在TortoiseSVN下,还有SVN Update、SVN  CheckOut
1、上传项目 Share Project   
2、忽略
1)一定要把bin和gen目录添加到SVN忽略列表中。
2)在Eclipse中设置build path让其忽略.svn文件夹
菜单栏Project -> Properties -> Java Build Path -> Source -> xxx/src-> Excluded,双击或点右边的编辑,在Exclusion patterns中加入“ **/.svn/** ”,忽略.svn目录。
3)每次上传最好清空bin和gen目录下所有文件
4)设置SVN忽略文件和目录(文件夹)
步骤1:window -> 首选项 -> Team -> Ignored Resources  
(添加 .settings、.class、target、.DS_Store、*.iml、.idea)
点击 Add Pattern添加。
步骤2:选中尚未加入版本控制的文件或目录,右键 -> Team -> 添加至SVN:ignore
会出现一个子菜单,允许你仅选择该文件或者所有具有相同后缀的文件。
如果你想从忽略列表中移除一个或多个条目,右击这些条目,选择TortoiseSVN从忽略列表删除。

3、Checkout检出

右击SVN Checkout设置URL of repository、Checkout directory、

Checkout Depth下Fully recursive、HEAD revision

4、把一个项目文件夹发布到SVN服务器上
右击项目 -> Team -> Share Project  -> Select a repository type选SVN
->  选择“创建新的资源库位置”或“使用已有资源库位置”->  “使用项目名称作为文件夹名”      

5、添加文件或文件夹

操作1:文件夹下

添加  TortoiseSVN下add
提交 SVN Commit
还原 TortoiseSVN下Revert
更新 SVN Update

 

操作2:Eclipse下

 

直接添加 右键点击项目 -> Team -> 提交或进行还原、更新操作
文件夹下把一个项目文件夹发布到SVN服务器上
6、历史版本
操作2:Eclipse下 Team -> 显示资源历史记录
切换到其它版本 Switch to Revision

7、建立分支

操作1:文件夹下 TortoiseSVN下Branch/tag...

操作2:Eclipse下 Team -> 分支/标记

8、合并

操作1:文件夹下 TortoiseSVN下Merge

操作2:Eclipse下 Team -> 合并 -> 勾选Merage a range of revisions

-> Update -> Merge from(指定合并内容) -> Select
9、切换
操作1:文件夹下 TortoiseSVN下Switch
操作2:Eclipse下 Team -> 切换
10、冲突
两者修改相同,后者先更新再提交
修改不同,手动选择后提交。
11、备份 TortoiseSVN下Export  备份项目
12、锁定
锁定 TortoiseSVN下Get Clock
解除锁定 TortoiseSVN下Release Clock

 

问题

一、什么是版本控制,说出常见的版本控制系统及区别。

1、常见的版本控制系统:CVS 集中式、SVN 集中式、Git 分布式、Github 托管社区。
2、区别:

1)分布式不用联网提交。

2)SVN与CVS优缺点中速度的比较,CVS比较慢。
3)SVN与CVS优缺点分析中元数据比较。CVS只允许存储文件。
4)github与git优缺点 在客户端实现了GUI上的简单易上手 , web端上实现了社区交互。

二、SVN与Git异同。

1)SVN不是分布式的;Git是分布式的。
2)SVN把内容按按文件方式存储;Git把内容按元数据方式存储。
3)SVN有全局版本号;Git没有。
4)Git的内容完整性要优于SVN。
5)SVN下载后在离线状态能看不到所有的Log;Git可以。
6)SVN必须先刷新才能提交,忘记合并或出现错误;Git出现这种情况比较少。

你可能感兴趣的:(android)