为 V8 做贡献

此页面上的信息解释了如何为 V8 做贡献。在向我们发送贡献之前,请务必阅读整个内容。

获取代码 #

请参阅 检出 V8 源代码

在您贡献之前 #

在 V8 的邮件列表中寻求指导 #

在您开始进行较大的 V8 贡献之前,您应该首先通过 V8 贡献者邮件列表 与我们联系,以便我们提供帮助并可能指导您。提前协调可以使您在以后避免沮丧。

签署 CLA #

在我们使用您的代码之前,您必须签署 Google 个人贡献者许可协议,您可以在线签署。这主要是因为您拥有对更改的版权,即使您的贡献成为我们代码库的一部分,我们也需要您的许可才能使用和分发您的代码。我们还需要确保其他一些事情,例如,如果您知道您的代码侵犯了其他人的专利,您会告诉我们。您不必在提交代码以供审核和成员批准之前这样做,但您必须在我们将您的代码放入我们的代码库之前这样做。

公司做出的贡献受与上述不同的协议的约束,即 软件赠送和公司贡献者许可协议

在线签署它们 此处

提交您的代码 #

V8 的源代码遵循 Google C++ 样式指南,因此您应该熟悉这些指南。在提交代码之前,您必须通过我们所有的 测试,并且必须成功运行预提交检查。

git cl presubmit

预提交脚本使用来自 Google 的 linter,cpplint.py。它是 depot_tools 的一部分,它必须位于您的 PATH 中 - 因此,如果您在 PATH 中有 depot_tools,一切应该正常工作。

上传到 V8 的代码审查工具 #

所有提交,包括项目成员的提交,都需要审查。我们使用与 Chromium 项目相同的代码审查工具和流程。为了提交补丁,您需要获取 depot_tools 并按照 请求审查 中的说明进行操作(使用您的 V8 工作区而不是 Chromium 工作区)。

注意中断或回归 #

获得代码审查批准后,您可以使用提交队列提交补丁。它运行一堆测试,如果所有测试都通过,则提交您的补丁。提交更改后,最好观察 控制台,直到您的更改后机器人变为绿色,因为控制台运行的测试比提交队列多一些。