开发通用规范
通用规范包含在开发过程中必须遵循的一般性原则,适用于所有语言和项目。它同各语言编码规范一样是代码审查工作的重要参考资料。
源文件
文件编码
源文件必须以 UTF-8 without BOM
方式编码。出特殊情况外,我们不接受任何其他编码。
换行符
源文件统一以 \n
(Unix 换行符)为换行符。提交到 git
中的源文件不应该出现其他换行方式。
行尾
行尾指文件最后一行的内容。每个源文件的最后一行必须包含一个唯一的换行符,除此之外不能含有任何其他字符。
空白字符
这里的空白字符包含任何空白字符与不可见字符,具体定义可参考Wiki。源文件通常不应该包含多余的空白字符,例如:
- 行尾的空白字符。
- 文件头部与尾部多余的空行。
版本控制系统
这里所谓的版本控制系统特指 git 。
全局 .gitignore
文件
设置统一的全局忽略文件可以更有效地避免将垃圾文件提交到版本控制系统,并且减少项目中的 .gitginore 文件的体积,并且减小不同开发者之间的差异。
配置方法
- 将下列代码保存为
~/.gitignore_global
文件中。 - 在终端执行如下命令:
git config --global core.excludesfile ~/.gitignore_global
。
# Compiled source #
###################
*.com
*.class
*.dll
*.exe
*.o
*.so
# Packages #
############
# it's better to unpack these files and commit the raw source
# git has its own built in compression methods
*.7z
*.dmg
*.gz
*.iso
*.jar
*.rar
*.tar
*.zip
# Logs and databases #
######################
*.log
*.sql
*.sqlite
# OS generated files #
######################
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db
@turtledb
# IDE
########################
*.iml
.idea/
.project
.classpath
.c9/
*.launch
.settings/
*.sublime-workspace
.vscode/
# dotenv
.env
# npm
node_modules/