SimpleNews 项目的重构之旅(2) - 整理项目 .gitignore 文件

字数 561阅读 101

出现情况

有些情况,项目中的文件是在 build 时候产生的,而且每一次 build 产生的文件并不相同,所以并不需要提交到版本控制,提交这些随环境刚改的文件也是没有实际意义的。

还有一些可能秘钥等文件,是不能随便上传到开源网站的。

在每一次查看状态 git status 时,就会看到一些很乱而又没有用的文件,因此 git 提供一种忽略方式来帮我们解决这种情况。

例如:build 目录下的文件是要忽略的

Android 项目中使用

在项目根目录新建 .gitignore 文件,我这里以 Android Gradle 项目为例,我们可以发现使用 AS 新建的项目中都是包含 .gitignore 文件的,其中也有一些可忽略的文件。
例如:

*.iml
.gradle
/local.properties
/.idea/workspace.xml
/.idea/libraries
.DS_Store
/build
/captures
.idea
.gradle/
.idea/

注意:这些路径都是相对路径

.gitignore 范例

GitHub 已经为我们准备了各种配置文件,只需要组合一下就可以使用了,如果不清楚如何使用改,可以查看:https://github.com/github/gitignore

如何生效

如果之前没有使用过 .gitignore 文件或者更改了 .gitignore文件,需要执行以下方法才能生效:

在repo的根目录下运行:

git rm -r --cached .
git add .
git commit -m “xxx"

之前就遇到不生效的问题

.gitignore 作用范围

.gitignore 作用范围包含整个文件目录以及其所有子目录
每个目录都可以另外 .gitignore 的文件,比如:在 Android 项目中作为 lib 依赖的库同样也需要忽略策略


SimpleNews 项目的重构之旅其他文章

SimpleNews 项目的重构之旅(1) -项目架构定位 & Gradle 全局配置
SimpleNews 项目的重构之旅(2) - 整理项目 .gitignore 文件
SimpleNews 项目的重构之旅(3) -EventBus 接入
SimpleNews 项目的重构之旅(4) -Gradle for Android 基础知识汇总
SimpleNews 项目的重构之旅(5) - Android Gradle 打包&混淆应用
SimpleNews 项目的重构之旅(6) - 命名规范 & Android Toolbar
SimpleNews 项目的重构之旅(7) - 改头换面&深度清理

推荐阅读更多精彩内容