PHP在之前把源代码迁移到了git下管理, 同时也在github(https://github.com/php/php-src)上做了镜像, 这样一来, 就方便了更多的开发者为PHP来贡献代码.
今天写这篇文章, 就是为了给在国内的同学们, 愿意为PHP开源社区做贡献的同学们, 做个示例, 如何为PHP来贡献你的智慧.
现在, 假设你要为贡献一个新特性, 那么你除了要做下面的这些步骤以外, 还需要在wiki.php.net上提交一个RFC, 待会我会介绍这个, 现在让我们先简单点, 假设你只是要为PHP修复一个bug(一般来说, 大家可以在这里发现PHP已经报告的bug:PHP Bugs). 现在假设你已经想好了要怎么修复这个Bug.
1. 首先, 你需要有一个github的账号, 没有的话, 来这里注册: 注册github.
2. Fork PHP的源代码, 在PHP的Github页面上的右上角有一个fork按钮, 点它
3. Fork以后, 你就有了一份属于你自己的PHP源代码仓库, 现在你就可以在这个仓库下, 修改PHP的源代码来为它修复Bug了.
具体开发没什么好说的, 不过如果对于Git的使用有问题的话, 可以参考Git使用手册, 比如这个:ProGit
我这里为大家提供一个简单的说明, 如果在Github上开始开发, 在你自己的PHP代码仓库的页面上, 会有一个说明, 比如在我的PHP仓库页面上https://github.com/laruence/php-src:
- ssh git@github.com:laruence/php-src.gi
然后, 我就在本地开发环境上, 执行:
- $git clone git@github.com:laruence/php-src.gi
然后, 你就得到了一个php-src目录, 进去开发吧,
4. 等你修复完成以后, 你提交到你属于你自己的这个PHP仓库中, 然后, 在你的PHP源代码仓库的Github页面的右上角, 会有一个pull request按钮. 点它.
提交的时候, 请注意你的提交说明的格式, 首先第一行应该是个简短的说明(最多79个字符), 说明你做了什么修改. 如果一句话说不完, 就插入一个空行, 然后输入大段的说明(参看New Commit Message Format) :
- <max 79 characters short description>\n
- \n
- <long description, 79 chars per line>
- \
如果你是修复了一个列在bugs.php.net上的bug, 那么你的简短说明应该类似如下格式:
- Fixed Bug #bug号 (Bug的描述)
5. 然后, 填写相关的信息, Github就会给PHP的pull request邮件组发送一份包含着你的更新的Pull Request邮件(大家不用担心你的英文, 只要你能说出来, 我们就能看懂, 当然, 如果你实在不愿意写英文, 也没关系, 写中文吧, 我看到了会处理, 我处理不了的, 我也会为大家翻译).
6. 最后, 如果PHP的Committers们认为你的修复正确(有一些为PHP贡献代码要注意的选项, 我留在下面). 就会Merge你的Pull Request到PHP的源代码中.
现在, 假设你要提交的是, 一个更新(添加新函数, 添加新语法), 那么在你提交了Pull Request的同时, 你还需要往internals@lists.php.net邮件组发送一个邮件, 来说明你为什么要提交这个更新, 让在这个邮件组的人们一起来讨论, 帮助你完善你的想法.
最后, 在你为PHP贡献了一些更新以后(被Committer接受的更新), 那么你就可以尝试在: Register Svn Accout上来申请一个你自己的PHP Developer账号了.
附录:
为PHP贡献源代码有几点要注意的(常见的问题):
1. 只写C89兼容的代码, 比如, 不要用单行注释(//), 变量的定义一定要在所有语句之前(block的开始)..
2. 变量命名, 遵循PHP已有的规范, 不要使用驼峰命名.
3. 对于一些非常小的更新, 比如代码中有拼写错误, 还是鼓励大家到bugs.php.net上提交Patch, 毕竟Merge Pull Request有的时候会比较麻烦.
更多的PHP代码规范, 参看这里: Submitting patch
注:本文转自:技术头条
相关推荐
8. CONTRIBUTING.md 文件描述了如何向项目贡献代码和参与开发的规则。 综上所述,这个压缩包提供了PHPWord库的完整代码,包括示例和必要的配置文件,可以直接在PHP环境中运行,无需额外安装步骤或依赖管理。这对于...
通过源代码,开发者可以深入理解这些功能背后的实现机制,为自己的项目进行定制化开发。 在描述中提到的“关于admin的使用”,这通常指的是如何通过PHP admin 进行数据库管理。首先,你需要配置phpadmin的配置文件...
PHP Code Sniffer 可以检查代码是否符合诸如PSR-1、PSR-2等编码标准,这些标准是由PHP FIG(PHP Framework Interop Group)制定的。通过检测命名约定、缩进、空格、注释格式等,它能确保代码的整洁和专业性。例如,...
5. 开源与社区贡献:PHP代码翻译器作为一个开源项目,意味着任何人都可以查看、使用、修改和分发源代码。这种开放性促进了技术的交流和进步,用户可以根据自己的需求定制功能,或者改进原有的翻译算法。 6. 学习...
10. **社区贡献与文档**:压缩包中的"代码中国.txt"文件可能包含来自社区的贡献,例如示例代码、教程或开发者讨论,这些都是了解PHP生态系统和最佳实践的好资源。 总之,深入研究PHP 4.3.1 源代码可以帮助开发者...
通过Zephir编写的代码会被编译成C代码,然后用C编译器编译为PHP扩展。 2. **PHP扩展开发**:PHP扩展通常由C语言编写,需要对C语言有深厚的掌握。Zephir的出现降低了这个门槛,使得熟悉PHP的开发者也能参与到扩展的...
全开源的特性使得这个系统更具吸引力,因为它允许社区成员查看、修改和贡献代码,共同完善系统功能。开源也意味着透明度,用户可以对代码进行安全审查,确保没有潜在的安全风险。此外,亲测可用的标签则表明该系统...
该插件的源代码存储在atom-autocompletion-master目录下,用户可以查看并参与到项目的开发中,为其改进和完善贡献自己的力量。开源社区的持续贡献使得Atom-atom-autocompletion保持更新,以适应不断发展的PHP语言和...
以上代码贡献给刚学PHP 的同学们,是刚学习PHP时自已做的一个网站,因为网站设及到的技术比较全面,(文件编程 数据库编程 ajax ... )撑握了此案例 基本上php 已经上手上 ,网站演示:http://uee.me/cUUJe
PHP CS Fixer是一款强大的开源工具,专为PHP开发者设计,旨在自动修复PHP代码中的编码风格问题,确保代码遵循统一的编码标准。这款工具由FriendsOfPHP团队开发并维护,其目标是提升代码质量和可读性,同时也减轻了...
将 PHP 代码转换为 Python 代码。 要求 PHP 5.3.3 或以上(建议至少 5.3.4 以避免潜在的错误) 贡献 Fork 项目,创建一个功能分支,并向我们发送拉取请求。 为了确保一致的代码库,您应该确保代码遵循我们从 ...
4. **贡献社区**:熟悉源代码的开发者还能参与PHP的开发和维护,为开源社区贡献力量。 **PHP源代码结构** PHP的源代码组织有序,主要分为以下几个部分: 1. **Zend Engine**:这是PHP的核心解析器,负责解释和...
5. **开源项目贡献**:对于开源项目,提供代码行数统计可以增加项目的透明度,吸引更多的贡献者。 总之,PHPCloc作为一款便捷的代码统计工具,无论是在日常开发、项目管理还是代码审查中,都能发挥其价值,帮助...
5_ad.zip源码PHP项目源代码下载[论坛社区]落伍之贡献HACK FOR Discuz!5_ad.zip源码PHP项目源代码下载 1.适合个人搭建网站项目参考 2.适合学生毕业设计搭建网站参考 3.适合小公司搭建网站项目参考
7. **CREDITS**: 该文件列出了对PHP项目作出贡献的人员和团队,包括核心开发者、贡献者等,是对他们工作的一种认可。 8. **ltmain.sh**: 这是GNU Libtool的主要脚本,用于管理库文件的版本信息和编译链接过程,简化...
由于其深度学习和循环神经网络的特性,该模型能够适应PHP语言的多样性和复杂性,为开发者提供了一种更强大、更精确的工具来检测和预防代码漏洞。 【结论】文章提出的基于改进ASTNN的PHP代码漏洞挖掘方法,通过利用...
PHP解释器是实现PHP语言的关键组件,它负责将PHP代码转换为机器可执行的指令。在本主题中,我们主要...通过阅读和分析这些源码,你可以探索PHP的底层机制,提高你的编程技能,并可能为PHP社区贡献自己的优化或改进。
- "系统开源"标签表明php_scan是一个开放源代码项目,这意味着用户可以自由查看、使用和贡献代码,这有助于工具的持续改进和更新。 通过合理利用php_scan这样的源代码审计工具,开发者可以显著提高PHP应用的安全性...
这为开发者提供了巨大的学习机会,可以深入理解系统的工作原理,进行定制化开发,或者贡献自己的改进。同时,由于是免费的,这降低了搭建此类系统的成本,使得小型企业和个人也能拥有自己的信息平台。 总之,开源...
《PHP源代码构建在线火灾报告系统》 在线火灾报告系统是一种高效、实时的灾害信息管理工具,它利用PHP编程语言实现...对于开发者而言,深入理解并实践此类系统,能有效提升Web开发技能,同时为社会安全贡献技术力量。