Files
dotfiles/.memory/plans/fix-github-push-large-binary.md
2026-03-12 12:14:33 +00:00

34 lines
1.4 KiB
Markdown

---
title: fix-github-push-large-binary
type: note
permalink: dotfiles/plans/fix-github-push-large-binary
tags:
- git
- risk
- tooling
---
# Fix GitHub Push Rejection for Large Binary
**Goal:** Remove the oversized `.local/bin/codebase-memory-mcp` blob from local-only history so `main` can push to GitHub successfully.
## Root cause
- [decision] Commit `969140e` added `.local/bin/codebase-memory-mcp` at ~143.51 MB.
- [decision] Commit `2643a0a` later removed the file, but the blob still exists in local history, so GitHub rejects the push.
## Tasks
- [ ] Rewrite the 4 local-only commits by soft-resetting to `origin/main`.
- [ ] Recreate a clean commit set without the large binary in history.
- [ ] Verify no large-file path remains in reachable history.
- [ ] Retry `git push` and confirm success.
## Acceptance criteria
- No reachable commit from `HEAD` contains `.local/bin/codebase-memory-mcp`.
- `git push` to `origin/main` succeeds without GitHub large-file rejection.
## Pre-mortem
- Most likely failure: recommit accidentally stages a regenerated large binary again.
- Fragile assumption: current worktree is clean except for the 4 local-only commits.
- Red flag requiring redesign: if the large blob exists in earlier shared history, a broader history rewrite would be required.
- Easy-to-miss regression: leaving `.local/bin/codebase-memory-mcp` unignored so it gets re-added later.