aboutsummaryrefslogtreecommitdiff
path: root/scripts/post-install.sh
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-04-20 09:05:39 -0500
committerCraig Jennings <c@cjennings.net>2026-04-20 09:05:39 -0500
commitf3526632257686692687b1b5a596eb399e42b119 (patch)
treefd8f220fb3e54bee53c51364a5c9505354c9b67d /scripts/post-install.sh
parent93c137a953e7a5fe69d781ebdb49fcc85ae67b0c (diff)
downloadarchsetup-f3526632257686692687b1b5a596eb399e42b119.tar.gz
archsetup-f3526632257686692687b1b5a596eb399e42b119.zip
aix: synchronous fetch + git-status annotations + auto-pull if clean
Adds multi-machine sync awareness to the session launcher. Before fzf: - Fetches all candidate repos in parallel (capped at 6 concurrent) - Annotates each entry with git status: (↑N ↓N dirty), (no upstream) - Clean repos show no annotation When launching a window: - If working tree is clean, has upstream, is behind (not ahead): pull - Otherwise: open window as-is, user handles any sync manually Design choices: - Fetches are synchronous — accurate status at the cost of a brief wait on session start. Parallel execution keeps it fast (~1-2s for 22 repos). - Pull is --ff-only — never merges, never creates merge commits in aix - Diverged repos (ahead AND behind) trigger no auto-action; user decides - No stash/pop dance — unreliable in multi-project batches; prefer explicit awareness via annotation Primary use case: moving between laptop and desktop. Wrap-it-up's always-push ensures remote is current at session end; this ensures local is current at next session start.
Diffstat (limited to 'scripts/post-install.sh')
0 files changed, 0 insertions, 0 deletions