chlog: cap the no-tag history search with --limit
Without a version tag, the boundary of a new entry was found by walking the whole history and diffing each commit's tree against the changelog path. On large repositories that per-commit tree diff takes 10+ minutes. Add --limit (default 500, 0 = unlimited) capping that walk: when no changelog commit is found within the last N commits, the oldest visited commit becomes the boundary — the version tag probe is skipped there, since it could jump the boundary arbitrarily far back and defeat the cap — and a warning explains the fallback. A found version tag still takes precedence and is unaffected by the limit.
This commit is contained in:
@@ -112,6 +112,11 @@ pkh put --ppa user/hello_xxx
|
||||
git push xxx user-fork
|
||||
```
|
||||
|
||||
`pkh chlog` walks the commit history back to the previous changelog entry.
|
||||
Without a version tag, that search is capped at the last 500 commits
|
||||
(`--limit <n>`, `0` = unlimited): beyond the cap, the entry simply starts
|
||||
at the oldest commit searched, which keeps the run fast on large histories.
|
||||
|
||||
### Incremental builds (build sessions)
|
||||
|
||||
Every `pkh deb` build records a **session** under `/var/tmp/pkh/sessions`:
|
||||
|
||||
Reference in New Issue
Block a user