orhun/git-cliff

`--prepend` cannot reliably identify the previous header

オープン

#712 opened on 2024/06/17

 (3 件のコメント) (0 件のリアクション) (0 人の担当者)Rust (308 件のフォーク)auto 404
bughelp wanted

Repository metrics

Stars
 (12,040 個のスター)
PR merge metrics
 (PR metrics pending)

説明

Is there an existing issue for this?

  • I have searched the existing issues

Description of the bug

The CLI argument --prepend is supposed to result in git-cliff injecting the changelog for recent releases into an existing changelog.

  1. Remove the old header.
  2. Prepend the new releases' bodies.
  3. Prepend the new header.

Step 1 relied on the header being static between runs of git-cliff. It performed a simple string comparison between the existing CHANGELOG.md and the current value in the changelog.header variable. Since #697, changelog.header contains a template. Thus its value might change between runs and thus prevent detecting the old header.

Steps To Reproduce

  1. Set changelog.header to a template such that the output after rendering changes between releases.
  2. Create a new release.
  3. Run git-cliff with the --prepend flag.

Expected behavior

git-cliff should properly detect and replace the old header.

Screenshots / Logs

No response

Software information

  • After PR #698

Additional context

No response

コントリビューターガイド