From 1051bf29406f41c88cd87fd2352ee3fc4f69f4d1 Mon Sep 17 00:00:00 2001 From: SDD Date: Fri, 16 Oct 2026 17:50:58 +0300 Subject: [PATCH] patches: MAME is now pushed as a full repo (branch vt1200-local) -- correct the README, which said it was not, and say why the patch is still kept --- patches/README.md | 35 +++++++++++++++++++++++------------ 1 file changed, 23 insertions(+), 12 deletions(-) diff --git a/patches/README.md b/patches/README.md index 92be3e2..b1477e5 100644 --- a/patches/README.md +++ b/patches/README.md @@ -31,23 +31,34 @@ because upstream moved, `git apply -3` will fall back to a three-way merge. `mame0289` is a tag leaves a **detached HEAD**, so commit before you check anything else out — otherwise edits are discarded. -## Why a patch and not a mirror +## Why a patch as well as a repo -The MAME tree is not pushed as a repository. Its remote **rejects shallow -updates** (`receive.shallowUpdate` is off), and this is a `--depth 1` clone -pinned at a tag, so no push from it is accepted: +The MAME tree **is** now pushed as a full repository — `origin` is +`git@git.k-space.ee:arti/mame0289.git`, and our commit sits on branch +**`vt1200-local`** there. Getting there needed `git fetch --unshallow` first +(99,645 commits, `.git` 1.9 GB, ~3 minutes) because the server rejects shallow +updates: ``` ! [remote rejected] vt1200-local -> vt1200-local (shallow update not allowed) ``` -Making it pushable means `git fetch --unshallow`, which downloads MAME's **full -history** — several GB and tens of minutes — to transmit a 50-line difference. -This patch carries the same information in 155 lines and is reviewable in a diff. +`receive.shallowUpdate` is off on that server, and the clone was `--depth 1` +pinned at a tag, so no push from it was accepted until it was unshallowed. +`git config receive.shallowUpdate true` on the server would avoid the unshallow +for anyone repeating this. -If a real fork is wanted anyway, unshallow first: +This patch is kept anyway, for three reasons: + +* it is the **complete change in 50 lines** — reviewable in a diff, where a + 1.9 GB repository is not; +* it **reproduces the tree without a full clone**, which matters on a fresh + machine or a slow link; +* it is the **record of what this project changes about upstream MAME**, and + every claim about those changes lives beside the driver rather than in a + repository's history. + +Note the branch name is `vt1200-local`, not `master`. If the forge's default +branch is still `master` and therefore empty, set `vt1200-local` as the default +so the repository opens on something. -```sh -git -C /home/arti/code/k-space/mame0289 fetch --unshallow upstream -git -C /home/arti/code/k-space/mame0289 push -u origin vt1200-local -```