name: 'Check commit message style' on: pull_request: types: - opened - edited - reopened - synchronize push: branches: - main permissions: read-all jobs: check-commit-message-style: name: Check commit message style runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Check Commit Type uses: gsactions/commit-message-checker@v2 with: pattern: '^((build|chore|ci|docs|feat|fix|perf|refactor|revert|style|test)(\(.+\))?(!)?(: (.*\s*)*))' flags: 'gm' error: 'Your first line has to the Conventional Commits specification.' excludeDescription: 'true' # optional: this excludes the description body of a pull request excludeTitle: 'true' # optional: this excludes the title of a pull request checkAllCommitMessages: 'true' accessToken: ${{ secrets.GITHUB_TOKEN }} - name: Check Line Length uses: gsactions/commit-message-checker@v2 with: pattern: '^[^#].{1,74}' error: 'The maximum line length of 74 characters is exceeded.' excludeDescription: 'true' # optional: this excludes the description body of a pull request excludeTitle: 'true' # optional: this excludes the title of a pull request checkAllCommitMessages: 'true' # optional: this checks all commits associated with a pull request accessToken: ${{ secrets.GITHUB_TOKEN }} # github access token is only required if checkAllCommitMessages is true