*.iml
.gradle
.idea
/.idea
/idea
/build
/captures
/gradle
/app/release
/app/debug
对上面的gitignore进行解读:
首先明白下面三个概念:
.gitignore所在的目录称为根目录,
根目录下所有的 "文件夹" 称为子目录
根目录下所有的 "文件" 称为根目录文件
第一部分:
*.iml 代表项目中所有后缀为 .iml的文件即 根目录 和 子目录 中所有的.iml后缀文件
这两个是等价的:*.iml <==> */*.iml
如果改成 /*.iml 则表示只忽略根目录下.iml后缀的文件
第二部分:
.gradle 和 .idea
这两个是忽略根目录和子目录中所有的.gradle 和 .idea文件夹和文件
下面的 /.idea 是忽略根目录下的.idea文件或者文件夹,这行的功能已经被上面的.idea包含了,所以可以将/.idea删除
第三部分:
/idea
/build
/captures
/gradle
这几句代表的是根目录下名称为idea,build,captures,gradle的文件或者文件夹
第四部分:
/app/release
/app/debug
这两行代表的是根目录下app文件夹下release和debug文件夹或文件
开头的 ”/“ 代表的是根目录,
如果是忽略文件,开头不加:”/“ 则表示项目中所有的文件
如果加了:”/“ 表示只有根目录下的文件
如果是忽略文件夹,将文件夹的路径放上去即可,比如上面的:/app/release , /gradle