一、使用SVN管理项目时,添加忽略文件的方式

Android Studio 配合SVN时,添加忽略文件相对简单,首先打开项目的Settings选项,切换到Version Control下的Ignored Files目录,如下图:

ignore1.png

点击右上角绿色加号,出现如下对话框:

ignore2.png

其中
Ignore specified file选项是忽略指定的文件
Ignore all files under选项是忽略指定文件夹下的文件
Ignore all files matching选项是忽略匹配指定格式的文件

一般需要忽略的文件如下:
1、.idea文件夹
2、.gradle文件夹
3、所有的build文件夹
4、所有的.iml文件
5、local.properties文件

根据需求选择对应的选项添加要忽略的文件即可,下图是我测试项目添加的忽略文件:

ignore3.png

添加完成后,项目的目录结构中对应文件会变成如下样式:

ignore4.png

此时再提交文件会发现被忽略的文件(即黄色字体颜色的文件)不会出现在SVN的提交列表中。

二、使用Git管理项目时,添加忽略文件的方式

Android Studio创建项目后,在项目的根目录下会生成一个.gitignore文件,Android的项目.gitignore文件建议按如下方式书写:

# Built application files  //
*.apk
*.ap_ # Files for the ART/Dalvik VM
*.dex # Java class files
*.class # Generated files
bin/
gen/
out/ # Gradle files
.gradle/
build/ # Local configuration file (sdk path, etc)
local.properties # Proguard folder generated by Eclipse
proguard/ # Log Files
*.log # Android Studio Navigation editor temp files
.navigation/ # Android Studio captures folder
captures/ # Intellij
*.iml
.idea/workspace.xml # Keystore files
*.jks

也就是GitHub官方推荐的.gitignore文件书写格式:
Android.gitignore
当然我们可以根据需求继续添加,例如在# Intellij下继续添加:

*.iws
.idea/

相关过滤规则举例说明:
#:注释符号,自动被Git忽略
*.iml:过滤所有的.iml后缀的文件
.gradle/:过滤掉.gradle文件夹
local.properties:过滤掉local.properties文件

Git文件忽略正是通过编写.gitignore文件实现的。之后通过.gitignore忽略的文件则不会被提交到GitHub。
对比下本地AS的工程目录和提交到GitHub上的工程目录:

local.PNG

github.PNG

无论是通过SVN还是Git管理项目,建议在项目初创建时就做好文件忽略的工作,再提交到服务器。

文/VipOthershe(简书作者)
原文链接:http://www.jianshu.com/p/934cc0d0dda6
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

Android 使用版本控制工具时添加忽略文件方式的更多相关文章

  1. Git 的两种忽略文件方式 gitignore 和 exclude

    Git 的两种忽略文件方式 gitignore 和 exclude .gitignore 不用说了,大家都知道. 有一个 exclude 可能接触比较少. 知道这个功能后发现,用在服务器上非常方便,因 ...

  2. git 添加忽略文件

    使用github for windows客户端添加.gitignore文件:   如下图所示,在github客户端可以看到未提交的更改列表 随便选中一个文件,右链,选择ignore file. 然后会 ...

  3. git bash下添加忽略文件列表

    转载自:https://blog.csdn.net/weixin_42808389/article/details/81232119 在用KEIL 5(MDK ARM)开发项目时需要用到GIT管理代码 ...

  4. swift项目初始化并添加忽略文件Swift.ignore

    1 先去GitHub上去把最新的忽略文件下载下载 https://github.com/github/gitignore 2 然后找到Swift.gitignore  把里面的 pod 前面的# 删除 ...

  5. Android:状态栏禁用时蓝牙多文件传输弹窗及进度显示

    一.蓝牙文件传输弹窗 Android原生蓝牙传输文件时,会弹出蓝牙文件接收的确认框且默认是以notification的形式显示在状态栏,当用户点击之后才会弹出一个dialog.那么当状态栏被禁用时,如 ...

  6. Android数据存储之Android 6.0运行时权限下文件存储的思考

    前言: 在我们做App开发的过程中基本上都会用到文件存储,所以文件存储对于我们来说是相当熟悉了,不过自从Android 6.0发布之后,基于运行时权限机制访问外置sdcard是需要动态申请权限,所以以 ...

  7. iOS 建立项目过滤机制 —— 给工程添加忽略文件.gitignore

        目前iOS 项目 主要忽略 临时文件.配置文件.或者生成文件等,在不同开发端这些文件会大有不同,如果 git add .把这些文件都push到远程, 就会造成不同开发端频繁改动和提交的问题. ...

  8. 给SVN控制的项目添加忽略文件/文件夹

    忽略目录其实有些像建立一个文件夹,但却不放入版本控制.如果不加入版本控制又会在svn status命令中显示出来,很不方便,所以可以设置本文件夹属性,让它既加入版本控制,又忽略其变化 未加入控制的文件 ...

  9. .gitignore文件中添加忽略文件或者目录后,不起作用。

    出现该问题的原因: 在git库中已存在了这个文件,之前push提交过该文件. .gitignore文件只对还没有加入版本管理的文件起作用,如果之前已经用git把这些文件纳入了版本库,就不起作用了. 解 ...

随机推荐

  1. 64-bit Tips

    终究还是来了.Apple下发了支持64位的最后通牒: As we announced in October, beginning February 1, 2015 new iOS apps submi ...

  2. 前端与Server端(路由)

    路由(前端):原理:只有几个XHR请求,就能实现页面无刷新闪烁更改URL 前端:1. ajax承担数据通信以及相对应的逻辑(交互逻辑) ajax进行数据交互,跟URL打交道,让数据交互的变化反映到UR ...

  3. hive学习3(hive基本操作)

    hive基本操作 hive的数据类型 1)基本数据类型 TINYINT,SMALLINT,INT,BIGINT FLOAT/DOUBLE BOOLEAN STRING 2)复合类型 ARRAY:一组有 ...

  4. Help Viewer 2.2 独立运行

    "C:\Program Files (x86)\Microsoft Help Viewer\v2.2\HlpViewer.exe" /catalogName VisualStudi ...

  5. 如何处理Android SDK无法更新问题?

    在Android开发中,最痛苦的事情就是相关库升级后,Android SDK太低,跑步起来,最最痛苦的事情就是,想更新,却因大天朝的一墙之隔,愣是没法更新.遇到这种情况怎么办呢?小编和大家分享一个解决 ...

  6. EMW 性能优化二之---并发配置

    EMW 性能优化二之---并发配置 在前一个日志中写到交货的异步更新,对于RFUI RF的前台操作会提升效率,异步更新不用等待更新状态的返回,启用更新队列的方式执行(SM13). 下面再补全性能相关的 ...

  7. 如何开发Domino中的WebService

    在domino中写webservice可以使用LotusScript,也可以使用java,由于LotusScript API提供的功能多数都是操作domino数据库中文档的,在web service中 ...

  8. 多线程之ReentrantReadWriteLock

    java5以后在java.util.concurrent包下,有很多的并发类,可以让我们摆脱java5时,笨重的写法来满足多线程,而且提供了更加丰富的使用场景能力 其中,在locks包下,提供了 Re ...

  9. Codeforces Round #177 (Div. 1) 题解【ABCD】

    Codeforces Round #177 (Div. 1) A. Polo the Penguin and Strings 题意 让你构造一个长度为n的串,且里面恰好包含k个不同字符,让你构造的字符 ...

  10. 一个类有两个方法,其中一个是同步的,另一个是非同步的; 现在又两个线程A和B,请问:当线程A访问此类的同步方法时,线程B是否能访问此类的非同步方法?

    一个类有两个方法,其中一个是同步的,另一个是非同步的:现在又两个线程A和B,请问:当线程A访问此类的同步方法时,线程B是否能访问此类的非同步方法? 答案:可以 验证 package com.my.te ...