No description
- Shell 100%
whatsdirty ran all repos against each server at once (max_per_server=100).
OpenSSH's MaxStartups (default 10:30:100) randomly drops connections beyond
10 concurrent unauthenticated ones, so ~1/3 of fetches/pulls failed with
"kex_exchange_identification: Connection reset by peer" — and every error
went to /dev/null, leaving repos reported as "needs pull" with no hint that
a pull was attempted and failed.
- Cap per-server concurrency at 8 (under the MaxStartups threshold),
overridable via WHATSDIRTY_MAX_PER_SERVER. Distinct servers still run
fully in parallel.
- Only update repos actually behind upstream, and rebase onto the already
fetched @{upstream} instead of `git pull` re-fetching — halves SSH
connections per scan, offsetting the lower cap.
- Retry a failed fetch once, and report surviving fetch/rebase failures in
a PULL FAILURES section with the real git/ssh error.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
||
|---|---|---|
| .gitea/workflows | ||
| .gitignore | ||
| install.sh | ||
| publish.sh | ||
| README.md | ||
| setup_script.sh | ||
| test.sh | ||
| whatsdirty | ||
whatsdirty
Simple tool to ease committing and pushing code changes across lots of repos.