PHP XDEBUG 扩展 | 贡献

如果你喜欢 Xdebug,请考虑给原作者 Derick 捐赠



Become a Patron!

贡献

Xdebug 托管在 GIT 中。源代码可以通过浏览 github 以及这样检出:

git clone git://github.com/xdebug/xdebug.git

如果你想修复某个错误或开发新功能,则需要按照以下说明操作。

初始设置

  1. github 上 Fork Xdebug。
  2. 克隆仓库:
    git clone git@github.com:{your username}/xdebug.git
    例如:
    git clone git@github.com:jamesbond/xdebug.git
  3. 切换到 xdebug 仓库:
    cd xdebug.
  4. 确保设置你的 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"
  5. 添加原始仓库作为远程仓库(在移除旧仓库之后):
    git remote add upstream git://github.com/xdebug/xdebug.git && git fetch upstream
  6. 添加一个 xdebug 2.5 的跟踪分支:
    git checkout --track origin/xdebug_2_5

保持最新

  1. 切换到 xdebug 仓库(如果你还没有的话):
    cd xdebug
  2. 运行:
    git checkout master && git fetch upstream && git rebase upstream/master
  3. 运行:
    git checkout xdebug_2_5 && git fetch upstream && git rebase upstream/xdebug_2_5

修复错误

这个步骤和开发新功能是一样的,除了你工作的是 xdebug_2_5 的分支而不是主干

  1. 首先,确保保持最新
  2. 检出 xdebug_2_5 分支:
    git checkout xdebug_2_5.
  3. 创建一个功能分支:
    git checkout -b issue{issue number}
    例如:
    git checkout -b issue681
    如果还没有 bug 报告,那么需要创建一个。如果需要,可以在 issue681 部分之后添加功能描述,例如: issue623-debug-static-properties.
  4. 处理代码,并在测试目录添加一个或者多个测试,名称为 tests/bug00{issue number}.phpt,例如: tests/bug00623.phpt.
  5. 提交本地仓库: git commit ..主要提交信息的格式为 Fixed issue #1623: {issue report title}
  6. 只要你愿意重复前两个步骤。
  7. 使用远程仓库更新内容,尤其重要的是如果自分支以来有一些时间了:
    git fetch upstream && git rebase upstream/xdebug_2_5
  8. 将更改推送到远程仓库:
    git push origin {issue number}:{issue number}
    例如:
    git push origin issue681:issue681
  9. 一旦你对内容满意,便可以生成一个拉取请求。通过导航到你的仓库 (https://github.com/{username}/xdebug),选择刚刚创建的 (issue681) 分支,然后选择右上角的“拉取请求”。选择用户 xdebug 作为收件人。

    或者你也可以导航到 https://github.com/{username}/xdebug/pull/new/issue{issue number}

开发新功能

这个步骤和修复错误是一样的,除了你在主干而不是 xdebug_2_5 创建分支。

  1. 首先,确保保持最新
  2. 检出主干分支:
    git checkout master.
  3. 创建一个功能分支:
    git checkout -b issue{issue number}
    例如:
    git checkout -b issue681
    如果还没有 bug 报告,那么需要创建一个。如果需要你可以在 issue681 部分之后添加功能描述,例如: issue623-debug-static-properties.
  4. 处理代码,并在测试目录添加一个或者多个测试,名称为 tests/bug00{issue number}.phpt,例如: tests/bug00623.phpt.
  5. 提交本地仓库: git commit ..,主要提交信息格式为 Fixed issue #1623: {issue report title}
  6. 只要你愿意重复前两个步骤。
  7. 使用远程仓库更新内容,尤其重要的是如果自分支以来有一些时间了:
    git fetch xdebug && git rebase xdebug/master
  8. 将更改推送到远程仓库:
    git push origin {issue number}:{issue number}
    例如:
    git push origin issue681:issue681
  9. 一旦你对内容满意,便可以生成一个拉取请求。通过导航到你的仓库 (https://github.com/{username}/xdebug),选择刚刚创建的 (issue681) 分支,然后选择右上角的“拉取请求”。选择用户 xdebug 作为收件人。

    或者你也可以导航到 https://github.com/{username}/xdebug/pull/new/issue{issue number}