2026 Tagesmiete-Mac für große Git-Repos und Git LFS:
flacher Klon, partial clone und ein Drei-Tage-Bandbreitenplan
In einem ein- bis dreitägigen Mietfester scheitert ein Mono-Repo mit Git LFS oft vor Xcode, weil Klontopologie, gestaffelte LFS-Züge und freier Speicher die Wandzeit bestimmen. Dieses Playbook richtet sich an Kleinteams, die einen wegwerfbaren nativen macOS-Arbeitsplatz brauchen: drei Schmerzcluster, eine Strategiematrix, sieben Schritte, drei Kennzahlen, plus Links zu Download-Stabilität, Region & Latenz, SSH/VNC-FAQ und CI-Mietknoten.
Inhalt
01. Drei Schmerzcluster: Vollklon, LFS-Spitzen, Sparse-Drift
1) Vollklone fressen Tag null: Mono-Repos tragen historische Binärdateien; bei RTT 120–220 ms kann ein naiver git clone acht bis vierzehn Stunden kosten. Ohne dokumentierte Tiefe und LFS-Inventur entstehen parallele Retries mit 429er und Packfragmentierung.
2) LFS-Parallelität: Ein monolithischer git lfs pull erzeugt Schreibspitzen, bricht dann in einstellige MB/s ein und konkurriert mit Spotlight und Xcode-Index. Ohne isoliertes DerivedData wirkt der Baum fertig, doch Archive scheitert an Smudge-Fehlern.
3) Sparse vs. CI: Fehlende Fixtures erzeugen flaky Tests. Regeln versionieren und CI-Clone-Flags spiegeln. TLS-Inspection? Zuerst Netzwerk-Leitfaden lesen.
02. Matrix: flach vs. blobless/partial vs. sparse-checkout
Kurzfenster: flach für jüngste Builds, blobless/partial für tiefe Historien, sparse für einzelne App-Pfade. Region wählen via Latenz-Leitfaden.
| Dimension | Flach | blobless/partial | sparse |
|---|---|---|---|
| Historie | schwach außerhalb Tiefe | mittel, Blobs nachziehen | mittel, Pfade schneiden |
| Tag-0-Last | niedrig–mittel | mittel + Fetch | niedrig mit flach |
| LFS | typisch flach→LFS | Fetch beachten | Oberfläche kleiner |
| Risiko | Tags/Submodule | ältere Clients | Pfad vergessen |
03. Sieben Schritte
- Inventur:
git rev-list --count,git lfs ls-files -s. - Topologie:
--filter=blob:none+--depth, optional sparse. - Baseline: Durchsatz, erste Checkout-Zeit,
git count-objects -vH. - LFS staffeln: Pfade splitten,
GIT_LFS_CONCURRENT_TRANSFERS3–4. - DerivedData: umleiten, Archive-Puffer.
- Triage: TLS, 429, Smudge getrennt.
- Löschen: Repo, LFS-Cache, Tokens widerrufen.
git clone --filter=blob:none --single-branch --branch main https://example.com/org/mono.git
export GIT_LFS_CONCURRENT_TRANSFERS=3
git lfs pull --include="ios/**"
04. Kalender 1–3 Tage
| Länge | Tag 0 | Tag 1 | Tag 2 |
|---|---|---|---|
| 1 Tag | blobless/flach + min. LFS | — | — |
| 2 Tage | Klon + Haupt-LFS | Rest-LFS, Tests | — |
| 3 Tage | Klon, Inventur, CI | volles LFS | Archive, wipe |
Siehe CI-Knotenleitfaden—Miete ersetzt nicht die Pipeline.
05. Befehle & Backoff
Bei partial: zuerst git fetch. Abhängigkeiten: weiter Spiegel & Timeouts.
06. Kennzahlen & Mythen
- K1: 41–58 % der Tag-0-Fehler = Klon/LFS/Platte.
- K2: LFS-Parallelität 8→3–4 spart ~19–31 % Retry-Zeit.
- K3: 18–35 GB frei vor Archive-Spitzen.
Mythen: flach ist immer schneller; Spotlight auf sparse; PAT in global config.
07. Nur Laptop vs. native Miete
Für reproduzierbare Git/Xcode/Keychain-Pfade bleibt nativ macOS der stabilste Kurzzeitpfad. Fernzugriff: Anleitung, Kosten: Preise, Xcode Cloud: Matrix.