Skip to content
王听正 edited this page Sep 25, 2019 · 3 revisions

问题的开端

你有以下几种方式参与本项目:

  • 直接在本仓库创建暂时分支,通过pull request 来合并代码
  • fork 本项目,通过pull request来合并代码
  • 提issue,由仓库管理员来改进

创建分支

如果你是仓库管理员,拥有直接读写仓库的权限,那么当你有一个改进时,请在issue提供一个详细的记录,你可以标记这是一个bug或者feature,并写下具体的描述。 接下来,我将为您示范在此情况下如何修正一个bug:

克隆或更新仓库代码

执行

git clone https://github.com/ptrtonull-workshop/PianYuan.git
cd ./pianyuan

来克隆本仓库的dev分支代码,通常情况下,这个分支的代码是最新的,当然,如果你以前已经克隆过了,那就请您更新一次您的代码,使您的代码保持最新。

新建bug分支

在GitHub issue上提交一个issue, 记录下bug的情况,记下issue的号码,例如您新建了一个编号为#1的issue: 使用

git branch bug#1
git checkout bug#1

dev分支创立并切换到一个bug分支来修复这个bug,#后的号码为issue的号码,在这个分支中进行bug的修复。

检查代码

在本地文件夹中执行

python main.py 1 1 -G hostname username password

后,程序会自动写入数据到数据库,来测试你的代码的功能是否正常

其中

  • hostname:数据库地址
  • username:用户名
  • password:用户名密码,为空的时候可以不填

在本地项目文件夹中执行

black main.py
flake8  --ignore E501  main.py

来规范你的python代码,以符合flake8的规范。再使用flake8确认main.py中的语法错误和书写规范,如有不符合flake规范,提交的代码将无法通过CI的检查 在这条语句中,E501的意思是:你最多只能在一行中写79个字符,这个规定过于苛刻,故我们将它删除了

E501: E501 line too long (81 > 79 characters)

提交

修复完毕后,commit此次修改 完毕后,执行

git push origin bug#1

来推送该分支到Github。切换到Github,我们再将bug#1 通过pull requestdev分支合并,在这个过程中,我们的CI会检查代码。

等待合并完成之后,我们在本地执行

git push origin :bug#1

来远程删除在Github上的多余的分支

Clone this wiki locally