### Install Dependencies for Conventional Changelog Action Development Source: https://github.com/tripss/conventional-changelog-action/blob/releases/v6/README.md Run `npm install` to install project dependencies before contributing or testing. ```shell $ npm install ``` -------------------------------- ### Use Conventional Changelog Action with Defaults Source: https://github.com/tripss/conventional-changelog-action/blob/releases/v6/README.md This is the basic setup for the Conventional Changelog Action. Write permissions are required for `git push`. ```yaml permissions: contents: write - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} ``` -------------------------------- ### Generate GitHub Releases with Conventional Changelog Action Source: https://github.com/tripss/conventional-changelog-action/blob/releases/v6/README.md This example shows how to use the Conventional Changelog Action to generate changelog data and then use `actions/create-release` to create a GitHub release. ```yaml - name: Conventional Changelog Action id: changelog uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} output-file: "false" - name: Create Release uses: actions/create-release@v1 if: ${{ steps.changelog.outputs.skipped == 'false' }} env: GITHUB_TOKEN: ${{ secrets.github_token }} with: tag_name: ${{ steps.changelog.outputs.tag }} release_name: ${{ steps.changelog.outputs.tag }} body: ${{ steps.changelog.outputs.clean_changelog }} ``` -------------------------------- ### Update Elixir Mix Version File Source: https://context7.com/tripss/conventional-changelog-action/llms.txt This example shows how to update the version in an Elixir Mix project's `mix.exs` file using a specific regex pattern. ```elixir # mix.exs — before defmodule MyApp.MixProject do def project do [ app: :my_app, version: "0.2.1" ] end end ``` ```yaml - uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} version-file: './mix.exs' # mix.exs — after a feat commit → version: "0.3.0" ``` -------------------------------- ### Pre-Commit Hook Example Source: https://github.com/tripss/conventional-changelog-action/blob/releases/v6/README.md Implement a CommonJS module with a single export `preCommit` to run custom logic before the git-add-git-commit phase of a release. The function receives an object with `tag` and `version` properties. Ensure the script is bundled and has no return value. ```typescript interface Props { tag: string; // Next tag e.g. v1.12.3 version: string; // Next version e.g. 1.12.3 } export function preCommit(props: Props): void {} ``` -------------------------------- ### Set Custom Tag Prefix Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Define a custom prefix for git tags using the `tag-prefix` input. For example, setting it to `release-` will create tags like `release-1.2.3`. An empty string results in bare version tags. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} tag-prefix: 'release-' # → tag: release-1.2.3 ``` -------------------------------- ### Pre-Version Generation Hook Example Source: https://github.com/tripss/conventional-changelog-action/blob/releases/v6/README.md Use the `preVersionGeneration` function to manually update the version before changelog generation. This CommonJS module should export a function that accepts the next version string and returns a modified version string. ```typescript // Next version e.g. 1.12.3 export function preVersionGeneration(version: string): string {} ``` -------------------------------- ### Pre-Tag Generation Hook Example Source: https://github.com/tripss/conventional-changelog-action/blob/releases/v6/README.md Implement the `preTagGeneration` function to modify the git tag before changelog generation. This CommonJS module exports a function that takes the next tag string and returns a modified tag string. ```typescript // Next tag e.g. v1.12.3 export function preTagGeneration(tag: string): string {} ``` -------------------------------- ### Generate Changelog and Create Release Source: https://context7.com/tripss/conventional-changelog-action/llms.txt This snippet shows how to use the conventional-changelog-action to generate a changelog and then use its outputs to create a GitHub release. Ensure the GITHUB_TOKEN secret is available. ```yaml - name: Conventional Changelog Action id: changelog uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} output-file: 'false' - name: Create GitHub Release uses: actions/create-release@v1 if: ${{ steps.changelog.outputs.skipped == 'false' }} env: GITHUB_TOKEN: ${{ secrets.github_token }} with: tag_name: ${{ steps.changelog.outputs.tag }} # e.g. v1.3.0 release_name: ${{ steps.changelog.outputs.tag }} body: ${{ steps.changelog.outputs.clean_changelog }} prerelease: false ``` -------------------------------- ### Enable Pre-Release Versioning Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Set `pre-release` to 'true' to enable pre-release versioning. Use `pre-release-identifier` to customize the identifier (e.g., 'beta' instead of the default 'rc'). ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} pre-release: 'true' pre-release-identifier: 'beta' # feat commit → 1.2.0 becomes 1.2.0-beta.0 ``` -------------------------------- ### Prepend Changelog to Input File Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Use `input-file` to prepend new changelog entries to an existing file. This is recommended for growing changelogs. `release-count` is ignored when `input-file` is set. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} input-file: 'CHANGELOG.md' output-file: 'CHANGELOG.md' ``` -------------------------------- ### Use Deploy Key with Conventional Changelog Action Source: https://github.com/tripss/conventional-changelog-action/blob/releases/v6/README.md Configure the action to use a deploy key for authentication. Set `github-token` to an empty string when using a deploy key. ```yaml - name: Checkout GitHub Action uses: actions/checkout@v4 with: ssh-key: ${{ secrets.SSH_DEPLOY_KEY }} - name: Conventional Changelog Action id: changelog uses: TriPSs/conventional-changelog-action@v5 with: github-token: "" ``` -------------------------------- ### Use Custom File for Versioning with Conventional Changelog Action Source: https://github.com/tripss/conventional-changelog-action/blob/releases/v6/README.md Specify a custom file for versioning using the `version-file` input. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} version-file: "my-custom-file.yaml" ``` -------------------------------- ### Configure Conventional Changelog Action with Custom Options Source: https://github.com/tripss/conventional-changelog-action/blob/releases/v6/README.md Customize the changelog generation with various options like git message, preset, output file, and version file. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} git-message: 'chore(release): {version}' git-user-name: 'Awesome Changelog Action' git-user-email: 'awesome_changelog@github.actions.com' preset: 'angular' tag-prefix: 'v' output-file: 'MY_CUSTOM_CHANGELOG.md' release-count: '10' version-file: './my_custom_version_file.json' // or .yml, .yaml, .toml, mix.exs, .properties version-path: 'path.to.version' skip-on-empty: 'false' skip-version-file: 'false' skip-commit: 'false' git-branch: 'my-maintenance-branch' ``` -------------------------------- ### Use Pre-commit Hook with Conventional Changelog Action Source: https://github.com/tripss/conventional-changelog-action/blob/releases/v6/README.md Integrate a pre-commit hook by specifying its path in the `pre-commit` input. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} pre-commit: some/path/pre-commit.js ``` -------------------------------- ### Pre-release Workflow with Conventional Changelog Action Source: https://context7.com/tripss/conventional-changelog-action/llms.txt This workflow configures the Conventional Changelog Action to generate pre-releases. It sets the `pre-release` option to 'true' and specifies a `pre-release-identifier`. A fallback version is provided for initial pre-releases. The output is not written to a file, and a subsequent step creates the GitHub pre-release. ```yaml name: Pre-release on: push: branches: [next] permissions: contents: write jobs: prerelease: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Conventional Changelog Action id: changelog uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} pre-release: 'true' pre-release-identifier: 'beta' fallback-version: '1.0.0-beta.0' output-file: 'false' - name: Create Pre-release uses: actions/create-release@v1 if: ${{ steps.changelog.outputs.skipped == 'false' }} env: GITHUB_TOKEN: ${{ secrets.github_token }} with: tag_name: ${{ steps.changelog.outputs.tag }} release_name: ${{ steps.changelog.outputs.tag }} body: ${{ steps.changelog.outputs.clean_changelog }} prerelease: true ``` -------------------------------- ### Run All Tests with Act for Conventional Changelog Action Source: https://github.com/tripss/conventional-changelog-action/blob/releases/v6/README.md Execute all tests defined in the `pull_request` workflow using `act`. ```shell $ act pull_request -P ubuntu-latest=ghcr.io/catthehacker/ubuntu:act-22.04 --quiet ``` -------------------------------- ### Standard Release Workflow Source: https://context7.com/tripss/conventional-changelog-action/llms.txt A basic GitHub Actions workflow that checks out code and runs the conventional-changelog-action with default settings. ```yaml name: Release on: push: branches: [main] permissions: contents: write jobs: release: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} ``` -------------------------------- ### Use Custom Changelog Configuration File Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Provide a path to a custom Conventional Changelog configuration file using `config-file-path`. This overrides the `preset` input and allows for detailed customization of issue prefixes, URL formats, and writer options. ```javascript 'use strict' const config = require('conventional-changelog-conventionalcommits') module.exports = config({ issuePrefixes: ['PROJ-'], issueUrlFormat: 'https://jira.example.com/browse/{{prefix}}{{id}}' }) ``` ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} config-file-path: '.github/changelog.config.js' ``` -------------------------------- ### Preview Release Without Tagging or Committing Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Use `skip-tag: 'true'` and `skip-commit: 'true'` for dry-run scenarios to preview a release without creating a tag or commit. Check the `skipped` output to determine if a release would have been made. ```yaml - name: Preview Release id: preview uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} skip-tag: 'true' skip-commit: 'true' - name: Report run: echo "Would release ${{ steps.preview.outputs.version }}" ``` -------------------------------- ### Use Conventional Changelog Action Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Basic usage of the Conventional Changelog Action. Requires a GitHub token for authentication. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} ``` -------------------------------- ### Run a Specific Job with Act for Conventional Changelog Action Source: https://github.com/tripss/conventional-changelog-action/blob/releases/v6/README.md Use `act` to run and test a specific job. Replace `` with the actual job name. ```shell $ act -j -P ubuntu-latest=ghcr.io/catthehacker/ubuntu:act-22.04 --quiet # Example $ act -j test-json -P ubuntu-latest=ghcr.io/catthehacker/ubuntu:act-22.04 --quiet ``` -------------------------------- ### Update JSON Version File Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Configure the action to read and write the version from a JSON file like package.json. The `version-path` option specifies the key within the JSON object. ```json // package.json — before { "name": "my-app", "version": "1.2.0" } ``` ```yaml - uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} version-file: './package.json' version-path: 'version' # package.json — after a feat commit # { "name": "my-app", "version": "1.3.0" } ``` -------------------------------- ### Set Fallback Version for First Release Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Configure `fallback-version` to define the version used for the very first release when no previous tag is found. It defaults to '0.1.0'. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} fallback-version: '1.0.0' ``` -------------------------------- ### Add Changelog to GitHub Actions Job Summary Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Set `create-summary: 'true'` to add the generated changelog as a GitHub Actions Job Summary. Defaults to `false`. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} create-summary: 'true' ``` -------------------------------- ### Update YAML Version File Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Use this configuration to update the version in a YAML file, such as Helm's Chart.yaml. The action preserves comments and whitespace by using string replacement. ```yaml # Chart.yaml — before apiVersion: v2 name: my-chart version: "0.5.1" ``` ```yaml - uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} version-file: './helm/Chart.yaml' version-path: 'version' # Chart.yaml — after a fix commit → version: "0.5.2" ``` -------------------------------- ### Bump Version in Multiple Files Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Use `version-file` with a comma-separated list to update the version in multiple files. `version-path` specifies the location of the version string within these files. ```yaml # Bump version in both package.json and a custom YAML manifest - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} version-file: './package.json, ./helm/Chart.yaml' version-path: 'version' ``` -------------------------------- ### Update TOML Version File Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Configure the action to update the version in a TOML file like Cargo.toml. It uses string replacement to maintain original formatting. ```toml # Cargo.toml — before [package] name = "my-crate" version = "0.3.0" ``` ```yaml - uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} version-file: './Cargo.toml' version-path: 'package.version' # Cargo.toml — after a breaking-change commit → version = "1.0.0" ``` -------------------------------- ### Override Git Hosting Domain for Conventional Changelog Action Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Set `git-url` to override the default `github.com` for the git hosting domain. Use this for GitHub Enterprise Server instances. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} git-url: 'github.mycompany.com' ``` -------------------------------- ### Use a Specific Preset Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Specify the Conventional Changelog preset to use for parsing commit messages. Options include `angular`, `conventionalcommits`, and `eslint`. This input is ignored if `config-file-path` is set. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} preset: 'conventionalcommits' ``` -------------------------------- ### Pre-commit Hook for Conventional Changelog Action Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Provide a path to a CommonJS script for the `pre-commit` hook. This script runs after changelog generation but before `git add` and `git commit`, allowing updates to extra files included in the release commit. ```javascript // scripts/pre-commit.js 'use strict' const fs = require('fs') exports.preCommit = async ({ tag, version }) => { // Inject the version into a native README badge const readme = fs.readFileSync('README.md', 'utf8') fs.writeFileSync( 'README.md', readme.replace(/version-[0-9.]+[^-]+-blue/, `version-${version}-blue`) ) } ``` ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} pre-commit: 'scripts/pre-commit.js' ``` -------------------------------- ### Monorepo Scoped Release Workflow Source: https://context7.com/tripss/conventional-changelog-action/llms.txt This workflow demonstrates a scoped release for a monorepo, targeting specific paths and configuring the action for a subdirectory. It includes fetching all history and skipping the git pull. ```yaml name: Release my-lib on: push: branches: [main] paths: ['packages/my-lib/**'] permissions: contents: write jobs: release: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 with: fetch-depth: 0 - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} git-path: 'packages/my-lib' version-file: 'packages/my-lib/package.json' tag-prefix: 'my-lib-v' output-file: 'packages/my-lib/CHANGELOG.md' skip-git-pull: 'true' ``` -------------------------------- ### Configure Git Pull Method for Conventional Changelog Action Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Set `git-pull-method` to specify the argument passed to `git pull` when syncing the repo before tagging. Defaults to `--ff-only`. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} git-pull-method: '--rebase' ``` -------------------------------- ### Disable Skipping on Empty Changelog Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Set `skip-on-empty` to 'false' to prevent the action from exiting early when the generated changelog has no entries. By default, it skips release creation in such cases. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} skip-on-empty: 'false' ``` -------------------------------- ### Update Java Properties Version File Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Use this configuration to update the version in a Java properties file, such as `gradle.properties`. The action preserves the original separator style (`=` or `:`). ```properties # gradle.properties — before version=2.1.0 ``` ```yaml - uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} version-file: './gradle.properties' version-path: 'version' # gradle.properties — after a fix commit → version=2.1.1 ``` -------------------------------- ### Tag Only with Conventional Changelog Action Source: https://github.com/tripss/conventional-changelog-action/blob/releases/v6/README.md Use this configuration to only generate a tag without committing the changelog file. Set `skip-commit` to `"true"`. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} skip-commit: "true" ``` -------------------------------- ### Specify Nested Version Path Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Use `version-path` with dot-notation to specify a nested path for the version string within a version file, such as in OpenAPI specifications. ```yaml # version-file: openapi.yaml → info: # version: "1.0.0" - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} version-file: 'openapi.yaml' version-path: 'info.version' ``` -------------------------------- ### Regenerate Changelog with Full History Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Set `release-count` to '0' to regenerate the changelog from all historical tags. This option has no effect if `input-file` is used. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} release-count: '0' # Full history rebuild ``` -------------------------------- ### Specify Git Branch for Conventional Changelog Action Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Use `git-branch` to specify the branch to push to, overriding the default of `${{ github.ref }}`. Useful for pushing to separate maintenance or release branches. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} git-branch: 'release/1.x' ``` -------------------------------- ### Skip Version Bumping Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Set `skip-bump` to 'true' to reuse the existing version without incrementing it. This is useful for changelog-only updates where the version number should remain unchanged. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} skip-bump: 'true' ``` -------------------------------- ### Configure Git User Identity Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Set a custom Git user name and email for the release commit using `git-user-name` and `git-user-email` inputs. Defaults are provided if not specified. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} git-user-name: 'Release Bot' git-user-email: 'release-bot@example.com' ``` -------------------------------- ### Skip Creating a Release Commit Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Set `skip-commit` to 'true' to prevent the action from creating a release commit. Version updates and tag creation will still occur, with version management falling back to git tags. ```yaml # Tag-only release (no commit) - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} skip-commit: 'true' ``` -------------------------------- ### Pre-changelog-generation Hooks for Conventional Changelog Action Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Specify a CommonJS script path for `pre-changelog-generation` hooks. These hooks, `preVersionGeneration` and `preTagGeneration`, can modify the computed version and tag before they are used. ```javascript // scripts/pre-changelog-generation.js 'use strict' // Append build metadata to the version exports.preVersionGeneration = (version) => { const build = process.env.GITHUB_RUN_NUMBER return `${version}+${build}` } // Override the tag format exports.preTagGeneration = (tag) => { return tag.replace('v', 'release-v') // e.g. release-v1.2.3 } ``` ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} pre-changelog-generation: 'scripts/pre-changelog-generation.js' ``` -------------------------------- ### Disable File Changelog in Conventional Changelog Action Source: https://github.com/tripss/conventional-changelog-action/blob/releases/v6/README.md Set `output-file` to `"false"` to prevent the action from writing the changelog to a file. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} output-file: "false" ``` -------------------------------- ### Skip Updating Version File Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Set `skip-version-file` to 'true' to prevent the action from reading or writing version files. Version detection will rely solely on git tags, which is useful for monorepos or separate version management. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} skip-version-file: 'true' ``` -------------------------------- ### Control CI Triggering with Skip CI in Conventional Changelog Action Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Set `skip-ci: 'false'` to allow the release commit to trigger CI. By default (`true`), `[skip ci]` is appended to the commit message to prevent CI runs. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} skip-ci: 'false' # allow the release commit to trigger CI ``` -------------------------------- ### Bypass Git Hooks with No Verify in Conventional Changelog Action Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Set `no-verify: 'true'` to pass `--no-verify` to `git commit`, bypassing local commit hooks. Defaults to `false`. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} no-verify: 'true' ``` -------------------------------- ### Custom Conventional Changelog Configuration Source: https://github.com/tripss/conventional-changelog-action/blob/releases/v6/README.md Provide a custom JavaScript configuration file to override default conventional commit settings like `issuePrefixes` and `issueUrlFormat`. This CommonJS module should require `conventional-changelog-conventionalcommits` and export a configuration object with desired overrides. ```javascript 'use strict' const config = require('conventional-changelog-conventionalcommits'); module.exports = config({ "issuePrefixes": ["TN-"], "issueUrlFormat": "https://jira.example.com/browse/{{prefix}}{{id}}" }) ``` -------------------------------- ### Skip Git Pull in Conventional Changelog Action Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Use `skip-git-pull: 'true'` when the checkout action has already fetched full history (`fetch-depth: 0`) to avoid pulling additional commits. ```yaml - uses: actions/checkout@v4 with: fetch-depth: 0 - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} skip-git-pull: 'true' ``` -------------------------------- ### Set Custom Git Commit Message Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Customize the commit message for the release commit using the `git-message` input. The `{version}` placeholder is replaced with the tag name. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} git-message: 'chore(release): {version}' ``` -------------------------------- ### Disable Git Push in Conventional Changelog Action Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Set `git-push: 'false'` to have the action commit and tag locally without pushing to the remote. Defaults to `true`. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} git-push: 'false' ``` -------------------------------- ### Suppress Changelog File Output Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Prevent the changelog from being written to a file by setting `output-file` to `'false'`. This is useful when the changelog content is only needed for other steps, such as creating a GitHub Release. ```yaml # No file output — use outputs.clean_changelog for GitHub Releases instead - name: Conventional Changelog Action id: changelog uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} output-file: 'false' - name: Create Release uses: actions/create-release@v1 if: ${{ steps.changelog.outputs.skipped == 'false' }} env: GITHUB_TOKEN: ${{ secrets.github_token }} with: tag_name: ${{ steps.changelog.outputs.tag }} release_name: ${{ steps.changelog.outputs.tag }} body: ${{ steps.changelog.outputs.clean_changelog }} ``` -------------------------------- ### Skip Git Pull in Conventional Changelog Action Source: https://github.com/tripss/conventional-changelog-action/blob/releases/v6/README.md Prevent the action from pulling extra changes before tagging. This is useful in CI to avoid tagging a different commit than the one built. ```yaml - name: Checkout repository uses: actions/checkout@v4 with: fetch-depth: 0 - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} skip-git-pull: "true" ``` -------------------------------- ### Filter Git Commits by Path in Conventional Changelog Action Source: https://context7.com/tripss/conventional-changelog-action/llms.txt Use `git-path` to filter commits considered for changelog and version bumps. This is useful in monorepos to scope releases to a specific package directory. ```yaml - name: Conventional Changelog Action uses: TriPSs/conventional-changelog-action@v5 with: github-token: ${{ secrets.github_token }} git-path: 'packages/my-lib' ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.