新しいリリースが公開されると自動的にChangelogファイルを更新します



マイワークフロー
Hackathonへの私の服従:自動的に維持する行動CHANGELOG.md 最新のプロジェクトのリリースノート.
新しいリリースが公開されると、アクションはリリースの名前と本文を受け取り、CHANGELOG.md ファイル.
changelogが"Keep a Changelog" -フォーマットとGithubの比較ビューへのリンクで“未リリース”の見出しを持って、アクションは魔法のビットになります.最初に、それは新しいリリースにポイントする「未リリース」見出しの比較URLを更新しますHEAD .
それから、他の比較URLを構築するためにそのURLを使用します.そして、ユーザーが前のリリースを最新のリリースに比較させるのを許しますv1.0.0 to v1.1.0 ).
GitHubの“リリース”機能の最近のオーバーホールと“自動生成リリースノート”ボタンを追加すると、私は、このアクションはChangelogsの採用を増やすのに役立つし、それらのchangelogsを最新に保つために負担を軽減することを願っています.

提出カテゴリ
メンテーナは必要である

YAMLファイルまたはコードへのリンク
このアクションを使用するワークフロー.
# .github/workflows/update-changelog.yaml
name: "Update Changelog"

on:
  release:
    types: [released]

jobs:
  update:
    runs-on: ubuntu-latest

    steps:
      - name: Checkout code
        uses: actions/[email protected]
        with:
          ref: main

      - name: Update Changelog
        uses: stefanzweifel/[email protected]
        with:
          latest-version: ${{ github.event.release.name }}
          release-notes: ${{ github.event.release.body }}

      - name: Commit updated CHANGELOG
        uses: stefanzweifel/[email protected]
        with:
          branch: main
          commit_message: Update CHANGELOG
          file_pattern: CHANGELOG.md

stefanzweifel / changelog-updater-action
自動的に最新のリリースノートで“changelog”changelogを更新するGithubアクション.
変更のアクション
最新のリリースノートでchangelogを更新するGithubアクション.
アクション.
  • 新しいリリースのために新しい第2レベル見出しを加えます
  • あなたのリリースノートを適切な場所に貼り付けますCHANGELOG.md
  • あなたのchangelogが"Keep a Changelog" フォーマットは、“未リリース”-見出しを含むアクションは、最新バージョンとの間の比較ビューを指すように見出しを更新しますHEAD . 詳しくはこちらをご覧くださいhere )
    githubアクションを使いたくないですか?チェックアウトchangelog-updater CLI これは、このアクションを有効にします.
    用途
    このアクションは、release -イベントとタイプreleased . このようにして、リリースの名前と本体がchangelogに追加されます.
    使用する準備ができているワークフローの例を次に示します.
    ワークフローはデフォルトをチェックアウトするmain -あなたの倉庫のブランチ./CHANGELOG.md -ファイルを.
    View on GitHub

    追加情報
    このアクションを使用したオープンソースプロジェクト.
    私がちょうど行動をリリースしたので、大部分は私自身のプロジェクトです.しかしSpatie , オープンソースのPHPパッケージの巨大な貢献者は、PHPのパッケージテンプレートにワークフローを追加しましたそれは、私をスーパー誇りにします♥️

  • https://github.com/spatie/package-skeleton-laravel (非常に人気のPHPパッケージテンプレート)
  • https://github.com/stefanzweifel/git-auto-commit-action
  • https://github.com/stefanzweifel/php-changelog-updater
  • https://github.com/stefanzweifel/commonmark-mark-extension
  • 私はこのアクションを作成する動機についてブログ/dev . toプロファイルにいくつかの記事を書きました.