.gitignore 文件

.gitignore 文件是用来描述 Git 忽略规则的文件, 用来防止你提交不必要的文件进入版本控制, 比如个人设置, 编译后的文件等, 一般来说只有源码才能加入版本控制.

GitHub 的建议忽略规则

很多强迫症患者, 建完项目, 要创建 .gitignore 文件时, 就开始纠结了, 总觉得自己填入的规则不全面, 网上找的也不尽相同. 这时候不如我们看看 GitHub 的建议吧, 在 GitHub 有一个 .gitignore 文件模板集合: https://github.com/github/gitignore

大概分为 语言的 和 环境的, 一级目录中的都是 各种语言的 gitignore, Global 目录下都是各种环境的全局 gitignore, 如系统的、和开发工具的忽略规则.

iOS 项目的配置建议

以在 macOS 下使用 Xcode 开发 iOS 项目为例:

首先需要 按语言给项目配置 .gitignore 文件, 如 Objective-C 可参考: Objective-C.gitignore , Swift 可参考: Swift.gitignore . 在项目文件夹下新建 .gitignore 文件, 然后把上面对应语言的忽略规则复制进去保存即可.

然后需要配置全局的忽略规则, 忽略系统自动生成的一些文件或文件夹. 如 macOS 系统的 .DS_Store 等, 可参考: Global/macOS.gitignore . 在用户目录①下新建 .gitignore_global 文件, 然后把上面对应的忽略规则复制进去保存即可.

还有一类忽略规则, 用来忽略开发工具产生的一些文件, 一般是能自动生成的文件, 比如一些编译后的二进制文件, 或者是用户个人相关的偏好设置文件, 这些都不用提交到版本控制. Xcode 可参考: Xcode.gitignore . 开发工具的忽略规则可以写到全局忽略文件中, 也可以写到具体项目的忽略文件中. 但是为了防止你配置到了全局忽略文件, 而协作者没有配置, 然后往仓库提交了不必要文件的问题, 所以大多人都习惯将开发工具的相关忽略规则写到具体项目的忽略文件中②.

注:

①:
macOS 系统的用户目录为: /Users/你的用户名
Windows 系统的用户目录为: C:\Users\你的用户名

Objective-C.gitignore 或者 Swift.gitignore 文件中已经同步包含了 Xcode.gitignore 的忽略规则, 所以可以不用关心这个文件