Skip to content

feat: implement gh sync extension - #1

Merged
wassimk merged 1 commit into
mainfrom
wm/initial-implementation
Feb 22, 2026
Merged

wassimk merged 1 commit into
mainfrom
wm/initial-implementation

Conversation

@wassimk

@wassimk wassimk commented Feb 22, 2026

Copy link
Copy Markdown
Owner

Summary

  • Implement gh sync as a gh CLI extension that fetches from the primary remote, fast-forwards outdated branches, warns about unpushed work, and cleans up branches whose upstream was deleted after merging or squash-merging
  • Includes --verbose flag, squash-merge detection via commit-tree/cherry, implicit upstream matching by branch name, and auto-detected color output
  • Full test coverage with integration tests using temporary git repos, plus CI workflows for testing and precompiled releases

Test plan

  • go build compiles without errors
  • go test ./... passes all tests (unit + integration)
  • ./gh-sync --help shows usage
  • ./gh-sync --verbose runs correctly in a real repo
  • gh extension install . installs successfully
  • gh sync works end-to-end in a real repo with branches in various states

@wassimk
wassimk force-pushed the wm/initial-implementation branch 2 times, most recently from 55076ec to 4263574 Compare February 22, 2026 05:05
Fetch from the primary remote, fast-forward outdated branches, warn about
unpushed work, and clean up branches whose upstream was deleted after
merging or squash-merging into the default branch.

Includes --verbose and --color flags, comprehensive test coverage, and
CI workflows for testing and precompiled releases.
@wassimk
wassimk force-pushed the wm/initial-implementation branch from 4263574 to 88da099 Compare February 22, 2026 05:11
@wassimk
wassimk merged commit 2dad420 into main Feb 22, 2026
1 check passed
@wassimk
wassimk deleted the wm/initial-implementation branch February 22, 2026 05:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant