Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: a9a0033f28d17aee94c726676f2f8f927f6fd061
      
https://github.com/WebKit/WebKit/commit/a9a0033f28d17aee94c726676f2f8f927f6fd061
  Author: Issac Roy <[email protected]>
  Date:   2026-07-20 (Mon, 20 Jul 2026)

  Changed paths:
    M Tools/CISupport/ews-build/steps.py
    M Tools/CISupport/ews-build/steps_unittest.py

  Log Message:
  -----------
  [EWS] Improve git cleanup step
https://bugs.webkit.org/show_bug.cgi?id=310319
rdar://173458312

Reviewed by Sam Sneddon.

Replace the porcelain `git branch | grep | xargs git branch -D` with
plumbing commands to fix two cascading failures: `git checkout origin/main`
failing when the remote tracking ref doesn't exist, and `git branch` output
including `*` which gets passed literally to `git branch -D`.

Use `git switch -d --discard-changes` to safely detach HEAD (falling back
to local main, then current HEAD if origin/main is missing), delete all
local branches with `git for-each-ref | git update-ref --stdin`, then
recreate the default branch with `git branch --no-track`.

* Tools/CISupport/ews-build/steps.py:
(CleanGitRepo.run): Replace checkout/branch-delete/grep pipeline with
git switch and git for-each-ref.
* Tools/CISupport/ews-build/steps_unittest.py:
(TestCleanGitRepo.default_remote_commands): Extract shared command
expectations into a helper to reduce repetition.

Canonical link: https://commits.webkit.org/317584@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to