Skip to content
Snippets Groups Projects
Select Git revision
  • 01616479f1b5e062860c8bf6b905b6c1b7268d8d
  • master default protected
  • 0.8.2
  • 0.8.1
  • 0.8.0
  • 0.7.13
  • 0.7.12
  • 0.7.11
  • 0.7.10
  • 0.7.9
  • 0.7.8
  • 0.7.7
  • 0.7.6
  • 0.7.5
  • 0.7.4
  • 0.7.3
  • 0.7.2
  • 0.7.1
  • 0.7.0
  • 0.6.27
  • 0.6.26
  • 0.6.25
22 results

version

  • Clone with SSH
  • Clone with HTTPS
  • Volker Schukai's avatar
    01616479
    History

    Bump Version

    This tool helps to increment the version number of a project.

    You can download the tool here: download.schukai.com/tools/version/.

    echo "1.0.0" | version patch
    # 1.0.1
    echo "1.0.0" | version minor
    # 1.1.0
    echo "1.0.0" | version major
    # 2.0.0

    You can also replace directly in files.

    YAML

    my:
      version: 1.0.0
    version patch --path my.yaml --selector my.version

    JSON

    {
      "my": {
        "version": "1.0.0"
      }
    }
    version patch --path my.json --selector my.version

    Git

    Or set git tags directly

    version patch --git

    Build

    With the command build the current build date can be output.

    version build

    Auto

    The 'auto' feature allows the tool to automatically determine the next version based on the project's git commit history since the last tag.

    It uses semantic commit messages to determine the type of version bump. If a commit message starts with "feat:", it will trigger a minor version bump. If a commit message starts with "fix:" or if it includes "BREAKING CHANGE", it will trigger a patch or a major version bump respectively.

    Here is how you can use the 'auto' feature:

    version auto --git

    Without the '--git' flag, the tool will use the last tag in the git history as the starting point for the version calculation. The result will be printed to stdout or written to a file if the '--path' flag is provided.

    It is important to note that this feature requires that your commit messages follow the Conventional Commits message format.

    Makefile

    
    build: 
        version patch --path $(PROJECT_ROOT)version.json --selector "version"
        $(eval VERSION := $(shell cat version.json | jq -r .version))
        $(eval BUILD := $(shell version date))
        
        echo "Compiling for every OS and Platform $(VERSION) $(BUILD)"