贡献代码

为Apache NetBeans项目贡献代码与为任何其他Apache软件项目贡献代码没有太大区别,所以Apache新项目贡献者指南值得一读。

我们关注阿帕奇行为准则,并希望所有贡献者也能关注它。

我们感谢新的贡献者遵守以下指导原则,让我们所有人都能更轻松地完成任务:

  1. 在开始编码之前,您可能想在开发人员邮件列表中讨论这个问题(请参阅邮件列表),给出提交拉入请求的原因,以便更清楚、更有经验的成员可以提出适当的解决方案/想法。

  2. 所有提交必须包括作者的全名和电子邮件地址。对于重要修改您需要提交一份个人贡献者许可协议(ICLA).

  3. 所有新文件都必须包含Apache Software Foundation许可证标题。如有疑问,请参阅任何NetBeans源代码。

  4. 所有提交都必须包含有意义的提交消息。有意义的提交消息在第一行包含提交的摘要,在正文(从第三行开始)中包含对更改内容和更改原因的解释。请记住,在未来,此提交消息很可能是向代码库提交更改的唯一信息源。如果提交修复了报告的问题,则摘要行应包含问题编号和标题[NETBEANS-XXX]插入依赖项后Maven pom.xml文件损坏例如。

  5. Pull请求可以由多个提交组成。这些提交应该将更改分组为有意义的实体。修复提交应压缩为修复的基本提交。

  6. 贡献者:准备好被问及关于你的公关的问题

    • 审阅者可能会有问题,您应该能够回答为什么以某种方式进行修复,以及为什么它是安全和适当的。

    • 记住,审查有时需要的时间与创建补丁的时间一样长。

    • 好的提交消息有助于他们预测问题。

  7. 对于评论员:请记住,投稿人想要解决问题,并且已经付出了努力。因此,要有礼貌,要集中注意力。

  8. 不要更改正确且有效的代码。

    • 考虑一个简单的循环。在许多情况下,您可以在for循环、for每个循环和流结构之间切换。所有这些都是有效的解决方案,如果代码没有损坏,就不要更改代码。

    • 改进是另一种情况。例如,try with resource构造通常比try finally构造更正确,而try finally构造是许多开发人员无法正确实现的。

    • 导致javac发出警告的构造也是简单修复的理想候选。

  9. 运行单元测试,如果您引入了新的功能/修复程序,则添加单元测试。所以在你开始工作之前,检查正在处理的模块的单元测试是否正确运行,以及在你做完之后继续做。

    • 如果单元测试失败,修复这些将是对代码库的一个很好的补充(最好使用单独的提交)

  10. 保持拉取请求的最新状态。当PR无法直接合并时(可能会在代码库中引入更改,这与您的PR冲突),您应该相应地进行更新。

  11. 遵循文件的编码约定。你的代码应该与那种风格相匹配,而不是脱颖而出。对于新文件,请按照NetBeans代码库的代码约定.

  12. 尽量保留代码可读、可维护、易于调试表演性的.

学习运行和调试NetBeans IDE或平台应用程序

观看一系列5个短片(平均2分钟)或查看使用NetBean开发NetBean获取有关如何从源代码构建、运行和调试NetBeans IDE或任何NetBeans平台应用程序的帮助。

为GitHub中的Apache NetBeans做出贡献

引导(执行一次)

由于您没有GitHub apache镜像的写入权限,因此需要https://github.com/apache/netbeans在GitHub中,这是使用GitHub页面右上角的“fork”按钮。

然后需要在计算机中克隆分叉存储库。

cd<您的项目目录>git克隆https://github.com/<您的用户名>/netbeans.git

在这个阶段,最好检查您是否可以构建和运行NetBeans。

cd网豆蚂蚁蚂蚁酶

最后,在您的计算机中,您需要在GitHub中设置您的姓名和电子邮件。这也将有助于git重新调整基准,以完成其任务。

git config--全局用户名“John Doe”git配置--全局用户电子邮件“john@doe.org网站"

这个--全球如果只想设置当前存储库,则可以删除参数。

还添加Apache NetBeans项目作为您的上游为了提交PR:

git远程添加上游https://github.com/apache/netbeans.git

完成所有这些之后,您就可以提交拉取请求了。

分支和提交请求

在开始修改或升级存储库中的NetBeans代码之前,您应该创建一个git分支,如下所示:

  1. 更改为主人分支具有切换到主分支.

  2. 使用创建分支git结帐-b mybranch(或者,使用两个命令:git分支mybranchgit签出mybranch).

现在可以开始修改NetBeans代码了。使用git提交适当时。

  • 使用git推送-u源mybranch创建并推动我的分支GitHub分支中的分支。

  • 使用git推送源mybranch之后。

如果您提交了许多不同的提交,最好将它们合并在一起。请参见挤压pull请求的提交寻求帮助。

一旦您的代码准备好进行检查,请创建一个拉入请求使用GitHub接口。请参见https://help.github.com/articles/creang-a-pull请求/寻求帮助。

耐心点

一旦你的拉请求被提交给Apache NetBeans,它就会出现在这个地址中https://github.com/apache/netbeans/pulls.

然后拉取请求将由NetBeans团队,一旦有时间。请耐心等待,因为这可能需要一些时间,具体取决于其他职责和正在进行的工作。

Pull请求的挤压提交

在提交Pull Request之前,理想情况下应该只包含一次提交。假设您在分支上执行了以下操作:

# 提交

X(X)

[NETBEANS-XXX]改进的YAML lexer。提高夜视能力和I/O错误的鲁棒性。

Y(Y)

哦,忘记包含lic文件

Z轴

Javadoc更新-更正拼写

如果PR合并到master as-is中,那么所有这些提交也将永远在master中。因此,在本例中,应将所有三个提交压缩为一个,以便X(X)左边是。

提交后(当然是在有人开始审查公关之后),你不应该接触公关的历史。

使用NetBean开发NetBean

这些步骤假设您已经分叉、克隆和配置了NetBeans开发存储库。

  1. 配置NetBean

    • 打开当前安装的NetBeans

    • 启用开发NetBean插件。

      • 打开插件对话框(工具插件)

      • 查找开发NetBean在任何一个可用安装列表

      • 如果是的话可用选中其复选框并单击安装

      • 如果是的话安装但不是活动,选中其复选框并单击激活

  2. 将开发存储库添加为NetBeans平台

    • 打开NetBeans平台管理器(工具NetBeans平台)

    • 点击添加平台…

    • 引导到<your-project-dir>/netbeans/nbuild/并选择网豆

    • 点击下一步>

    • 点击完成

    • 选择来源选项卡

    • 点击添加ZIP/文件夹…

    • 选择<your-project-dir>/netbeans然后单击正常开放

    • 关闭NetBeans平台管理器

  3. 创建新项目(文件新建项目…)

    • 类别:选择Java与Ant/NetBeans模块

    • 项目:选择模块套件

    • 点击下一步>

    • 输入一个项目名称:(例如NB-IDE-DEV)

    • (可选)更改项目地点:

    • 点击完成

  4. 找到开发存储库的源代码

    • 打开收藏夹窗口(窗口收藏夹)

    • 选择添加到收藏夹…在右键单击关联菜单中

    • 选择<your-project-dir>/netbeans然后单击添加

  5. 在源代码中设置断点。作为开始,尝试进入点公共静态void main(字符串参数[])

    • 收藏夹选项卡导航到平台/o.n.bootstrap/src/org/netbeans并打开主类

    • 设置断点

  6. 启动调试器

    • 从中选择IDE项目(例如NB-IDE-DEV)运行设置主项目菜单

    • 启动调试器:

      • 调试调试主项目菜单,

      • 单击调试工具栏项

      • Ctrl+F5组合键

捐赠代码

您可以在此处找到官方信息:https://incutor.apache.org/ip-clearance网站/

捐赠者可以使用如上所示的拉请求。(由于哈希的可读性更好而被压扁)

为了接受捐赠,Apache NetBeans PMC应该投票接受捐赠意向。

PMC必须设置一个表单,将列表附加到https://incutor.apache.org/ip-clearance网站/并打开一个问题来跟踪捐款。

捐赠方必须确保以下步骤正常(PMC成员需要检查):

  • 其公司填写并发送软件授权和/或公司CLA(如适用)

  • 参与捐赠代码的任何贡献者都有一个单独的CLA

  • 许可证是正确的,并且与Apache兼容。

一旦每一步都顺利,PMC将在普通@培养箱。

如果没有检测到问题,则可以合并代码。