PHP XDEBUG 扩展 | 贡献
如果你喜欢 Xdebug,请考虑给原作者 Derick 捐赠。
贡献
Xdebug 托管在 GIT 中。源代码可以通过浏览 github 以及这样检出:
git clone git://github.com/xdebug/xdebug.git
如果你想修复某个错误或开发新功能,则需要按照以下说明操作。
初始设置
- 在 github 上 Fork Xdebug。
- 克隆仓库:
git clone git@github.com:{your username}/xdebug.git
例如:
git clone git@github.com:jamesbond/xdebug.git
- 切换到 xdebug 仓库:
cd xdebug.
- 确保设置你的 git 名称和 email:
git config --get user.name && git config --get user.email
如果他们不正确,设置为正确的值:
git config user.name {your name} && git config user.email {your email}
例如:
git config user.name "Derick Rethans" && git config user.email "derick@xdebug.org"
- 添加原始仓库作为远程仓库(在移除旧仓库之后):
git remote add upstream git://github.com/xdebug/xdebug.git && git fetch upstream
- 添加一个 xdebug 2.5 的跟踪分支:
git checkout --track origin/xdebug_2_5
保持最新
- 切换到 xdebug 仓库(如果你还没有的话):
cd xdebug
- 运行:
git checkout master && git fetch upstream && git rebase upstream/master
- 运行:
git checkout xdebug_2_5 && git fetch upstream && git rebase upstream/xdebug_2_5
修复错误
这个步骤和开发新功能是一样的,除了你工作的是 xdebug_2_5 的分支而不是主干。
- 首先,确保保持最新。
- 检出 xdebug_2_5 分支:
git checkout xdebug_2_5.
- 创建一个功能分支:
git checkout -b issue{issue number}
例如:
git checkout -b issue681
如果还没有 bug 报告,那么需要创建一个。如果需要,可以在 issue681 部分之后添加功能描述,例如:
issue623-debug-static-properties.
- 处理代码,并在测试目录添加一个或者多个测试,名称为 tests/bug00{issue number}.phpt,例如:
tests/bug00623.phpt.
- 提交本地仓库: git commit ..主要提交信息的格式为 Fixed issue #1623: {issue report title}。
- 只要你愿意重复前两个步骤。
- 使用远程仓库更新内容,尤其重要的是如果自分支以来有一些时间了:
git fetch upstream && git rebase upstream/xdebug_2_5
- 将更改推送到远程仓库:
git push origin {issue number}:{issue number}
例如:
git push origin issue681:issue681
-
一旦你对内容满意,便可以生成一个拉取请求。通过导航到你的仓库 (https://github.com/{username}/xdebug),选择刚刚创建的 (issue681) 分支,然后选择右上角的“拉取请求”。选择用户 xdebug 作为收件人。
或者你也可以导航到
https://github.com/{username}/xdebug/pull/new/issue{issue number}。
开发新功能
这个步骤和修复错误是一样的,除了你在主干而不是 xdebug_2_5 创建分支。
- 首先,确保保持最新。
- 检出主干分支:
git checkout master.
- 创建一个功能分支:
git checkout -b issue{issue number}
例如:
git checkout -b issue681
如果还没有 bug 报告,那么需要创建一个。如果需要你可以在 issue681 部分之后添加功能描述,例如:
issue623-debug-static-properties.
- 处理代码,并在测试目录添加一个或者多个测试,名称为 tests/bug00{issue number}.phpt,例如:
tests/bug00623.phpt.
- 提交本地仓库: git commit ..,主要提交信息格式为 Fixed issue #1623: {issue report title}。
- 只要你愿意重复前两个步骤。
- 使用远程仓库更新内容,尤其重要的是如果自分支以来有一些时间了:
git fetch xdebug && git rebase xdebug/master
- 将更改推送到远程仓库:
git push origin {issue number}:{issue number}
例如:
git push origin issue681:issue681
-
一旦你对内容满意,便可以生成一个拉取请求。通过导航到你的仓库 (https://github.com/{username}/xdebug),选择刚刚创建的 (issue681) 分支,然后选择右上角的“拉取请求”。选择用户 xdebug 作为收件人。
或者你也可以导航到
https://github.com/{username}/xdebug/pull/new/issue{issue number}。