feat: mbs update takes a mirror url, backs up first and survives manual edits

Manual edits on the server are stashed (and saved as a patch) instead of aborting the update,
a full backup is taken before every update, mbs mirror remembers a custom source, unsafe urls
are refused, rollback restores the stashed edits. Covered by tests/test_mbs_update.sh.
This commit is contained in:
Savsis? 2026-10-04 03:51:16 +05:00
parent 2c5ec8b06c
commit 264991593a
3 changed files with 332 additions and 19 deletions

2
.gitignore vendored
View file

@ -7,3 +7,5 @@ __pycache__/
*.pyc
venv/
.claude/
.update_mirror
local-changes/