feat: ghost snapshot v2 (#8055)

This PR updates ghost snapshotting to avoid capturing oversized
untracked artifacts while keeping undo safe. Snapshot creation now
builds a temporary index from `git status --porcelain=2 -z`, writes a
tree and detached commit without touching refs, and records any ignored
large files/dirs in the snapshot report. Undo uses that metadata to
preserve large local artifacts while still cleaning up new transient
files.
This commit is contained in:
jif-oai authored and GitHub committed 2025-12-15 11:14:36 +01:00
1 parent 4274e6189a
commit 0d9801d448
3 files changed
+188 -129

No files matched your search

+3 -3
View File
@@ -44,7 +44,7 @@ dependencies = [
"bytestring",
"derive_more 2.0.1",
"encoding_rs",
"foldhash",
"foldhash 0.1.5",
"futures-core",
"http 0.2.12",
"httparse",
@@ -139,7 +139,7 @@ dependencies = [
"cfg-if",
"derive_more 2.0.1",
"encoding_rs",
"foldhash",
"foldhash 0.1.5",
"futures-core",
"futures-util",
"impl-more",
@@ -154,7 +154,7 @@ dependencies = [
"serde_json",
"serde_urlencoded",
"smallvec",
"socket2 0.6.0",
"socket2 0.6.1",
"time",
"tracing",
"url",