Firefox 源码文档 Logo

快速搜索

概述

  • 常用术语词汇表
  • Mozilla 应用程序快速指南

入门

  • 设置工作于 Firefox 代码库

在 Firefox 上工作

  • 在 Firefox 上工作
  • Bug 处理

Firefox 用户指南

  • Firefox DevTools 用户文档

源代码文档

  • 治理
  • Firefox 前端
  • DOM
  • 编辑器
  • 样式系统 (CSS) & 布局
  • 图形
  • 进程、线程和 IPC
  • Firefox DevTools 贡献者文档
  • 工具包
  • SpiderMonkey
  • GeckoView
  • Fenix
  • Focus for Android
    • 调整使用
    • 架构决策
    • 电池调试
    • 内容拦截
    • 使用 Sentry 进行崩溃报告
    • 开发自定义 GeckoView
    • 功能 & 问题工作流
    • 在调试环境中运行 GeckoView
    • 主页
    • 主屏幕提示
    • 多会话架构
    • 推荐的 pre-push 钩子
    • 发布流程
    • 发布轨道
    • 移除字符串
    • 冲刺流程
    • 遥测
    • UI 测试
    • l10n 屏幕截图生成
  • WebIDL
  • libpref
  • 网络
  • 远程协议
  • 服务
  • 文件处理
  • macOS 上的 Firefox
  • Windows 上的 Firefox
  • Firefox AI 平台
  • 辅助功能
  • 代码质量
  • 编写 Rust 代码
  • Rust 组件
  • Gecko Profiler
  • 性能
  • 数据库绑定 (SQLite、KV 等)
  • XPCOM
  • NSPR
  • 网络安全服务 (NSS)
  • Gecko 中的 Web 安全检查

Firefox 构建系统

  • Mach
  • 推送到 Try
  • 构建系统
  • Firefox CI 和 Taskgraph
  • 管理文档
  • 引入第三方组件

测试 & 测试基础设施

  • 自动化测试
  • 理解 Treeherder 结果
  • 已确认的间歇性故障
  • 为新配置启用 Firefox 测试
  • 避免间歇性测试
  • 测试策略
  • 配置更改
  • 浏览器 chrome mochitests
  • Chrome 测试
  • Marionette
  • geckodriver
  • 测试验证
  • WebRender 测试
  • Mochitest
  • XPCShell 测试
  • TPS
  • web-platform-tests
  • GTest
  • 模糊测试
  • 消毒剂
  • 性能测试
  • 代码覆盖率
  • 测试 & 调试 Rust 代码

发布 & 更新

  • Mozilla 更新基础设施
  • Watershed 更新
  • 取消支持更新

本地化 & 国际化

  • 国际化
  • 本地化

Firefox 和 Python

  • mozbase
  • 使用第三方 Python 包

Firefox 中收集的指标

  • 指标
Firefox 源码文档
  • Focus for Android
  • 推荐的 pre-push 钩子
  • 报告问题 / 查看页面源代码

推荐的 pre-push 钩子¶

如果您想缩短 PR 的周转时间,我建议添加一个 pre-push 钩子:此脚本将在单元测试或代码风格检查失败时停止推送,在它到达 TaskCluster 之前找到错误(TaskCluster 需要花费很长时间来查找日志中的错误)

#!/bin/sh

./gradlew -q \
        checkstyle \
        ktlint \
        pmd \
        detektCheck \
        app:assembleFocusArmDebug


# Tasks omitted because they take a long time to run:
# - unit test on all variants
# - UI tests
# - lint (compiles all variants)

使用方法

  1. 在 <repo>/.git/hooks/pre-push 创建一个包含以下内容的文件(排除“`”):

  2. 使其可执行: chmod 755 <repo>/.git/hooks/pre-push

它将在推送之前运行。注意

  • 运行 git push ... --no-verify 以在不进行检查的情况下推送

  • 运行大约需要 30 秒。如果您认为此钩子花费的时间太长,可以移除单元测试行,使其几乎立即完成。

上一页 下一页

使用 Sphinx 构建,并使用 主题 由 Read the Docs 提供。