Upgrade to Pro — share decks privately, control downloads, hide ads and more …

V8コントリビュート超入門

Avatar for Riya Amemiya Riya Amemiya
September 04, 2026

 V8コントリビュート超入門

このスライドはSlidevで作られており、以下のレポジトリで公開しています
https://github.com/riya-amemiya/amemiya_riya_slide_data/blob/main/v8_contribute_intro

Avatar for Riya Amemiya

Riya Amemiya

September 04, 2026

More Decks by Riya Amemiya

Other Decks in Technology

Transcript

  1. 自己紹介 西 悠太 (Nishi Yuta) 21歳(重要、important) V8 Contributor Platform Engineer

    at Dinii Inc. TSKaigi Staff が好きです。 にパッチを送るのも好きです。 TypeScript V8 @riya-amemiya
  2. 全体の流れ 1 2 3 4 5 6 を入れる ソースを取る ビルドする

    直して、テストを足す CLを送る レビューを受けて、Commit Queueに載せる depot_tools
  3. depot_tools と V8 の開発には depot_tools が必須です。 git clone して、パスを通します。 Chromium

    git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git export PATH="$(pwd)/depot_tools:$PATH"
  4. 1. ソースを取る fetch v8 cd v8 は depot_tools に入っています。 取得のあと、意図的に

    detached HEAD になります。 fetch の設定&mainにswitchします。 Gerrit git config --local gerrit.host true git switch main # or checkout main
  5. 2. 依存取得&ビルド git pull origin main gclient sync ./tools/dev/gm.py arm64.release

    でビルドします。 Macbook ProのM4 Proで1時間ぐらいかかります gm.py
  6. を送る 4. CL まずブランチを作ります。 git new-branch mychange コードを編集したり、テストを書いたりする~ #~ git

    checkout -b でも問題ありませんが、公式では git new-branch が推奨されています。
  7. Upload する git cl format git cl presubmit git cl

    upload git cl upload を打つと、Gerrit 上に CL ができます。
  8. 5. レビューとCommit Queue git cl owners → 変更したディレクトリの OWNERS から承認をもらいます

    → Commit-Queue +1 は、コミットせずに try bot だけ回します → Commit-Queue +2 で、testが全て成功したら自動でコミットされます → (CQを押す権限はcommitterにのみあります)
  9. 今日覚えて帰ってほしいこと ✓ V8の本体はchromium.googlesource.comにあり、GitHubの v8/v8 はミラー ✓ 変更は、GerritにCLとして送る ✓ depot_tools を入れてから

    fetch v8 でソースを取り、 tools/dev/gm.py でビルドする ✓ 挙動が変わる変更には、テストを付ける ✓ OWNERSの承認が付いてCommit Queueを通ると、自動でコミットされる
  10. 参考資料 V8 Docs: Contributing depot_tools: Setting up V8 Docs: Checking

    out the V8 source code V8 Docs: Building V8 from source Chromium Docs: Contributing to Chromium