在为项目作出贡献前,请确保阅读 Open Source Guides | Learn how to launch and grow your project. (opens new window) ,如果上述中描述与下方描述有悖,请以下方描述为准。

# 约定

# 编码

  1. 项目应该尽可能遵循 PEP8 代码规范,更多请参阅此页面
  2. 引入 typing,需要对代码中的输入输出做类型提示;
  3. assert 不应该用于参数校验,原因参见 Python: Don’t use assert for Data Evaluation | by Bala Vignesh | Medium (opens new window) 使用-O 可以禁用断言判断 notes/when-to-use-assert.md at master · emre/notes (opens new window)

# 格式

  1. 时间我们统一为 ISO-8601 格式,参阅:ISO 8601: the better date format | Blog | Kirby Kevinson (opens new window)

# per-commit

使用该操作在提交代码前检查代码的格式是否符合设置

# gitignore

项目根目录下的.gitignore文件用于忽略项目开发中产生的通用应该被忽略的文件或目录,你可以借助gitignore.io - 为你的项目创建必要的 .gitignore 文件 (opens new window) 生成。对于个人独有的需要忽略的文件或目录,你可以在$GIT_DIR/info/exclude文件(亦即:项目根目录下的.git\info\exclude文件)中写入排除的文件及目录路径,写法与.gitignore文件相同。参阅git - Can I make a user-specific gitignore file? - Stack Overflow (opens new window)

# commit

  • 分支备注

    对于上传到 git 远程仓库的分支,必须添加分支备注,需要用到的指令为:

    #  添加注释
    git config branch.{branch_name}.description 这里是注释
    #  查看备注
    git config branch.{branch_name}.description
    # 查看所有分支备注
    # 首先需要安装工具`git-br`
    npm i -g git-br
    # 执行查看命令
    git br
    

    具体参阅git 添加分支注释 - SegmentFault 思否 (opens new window)

  • 提交代码备注

    可以使用中文也可以使用英文,甚至可以混用,但是应该尽量保证清晰明了,尤其是改动较大时。

# docstring

我们使用reStructuredtext风格的 docstring 添加方法注释,在 PyCharm 中具体配置路径为:

File -> Settings -> Tools -> Python Integrated Tools -> Docstrings -> Docstring format

# 第三方模块引用

基于控制项目空间大小和后期代码维护的目的,对于第三方模块的引入和使用基本遵循下面的规则:

  1. 如果项目有可用包pip install xx,则直接安装;
  2. 尽量不修改源码,如果实在要修改,尽量去源码提交 pr;
  3. 运行时的垃圾文件不要上传到 git,避免仓库过大;
  4. 如果必要,使用 submodule,关于 submodule 的使用参考此文:submodule 的使用方法_THEGREATHXY 的博客-CSDN 博客_submodule (opens new window)
  5. 如果时间充足,尽量保证项目经过测试可以跑通;
  • 提交代码备注

    可以使用中文也可以使用英文,甚至可以混用,但是应该尽量保证清晰明了,尤其是改动较大时。