bumpy

command module
v0.56.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 24, 2022 License: MIT Imports: 7 Imported by: 0

README

Bumpy Ride

A versioning tool.

Table of Contents

Requirements

  • Go version 1.18 or higher. You can probably install it through your system's package manager (apt, brew, etc.). For general instructions, go here --no pun intended.

Installation

To install, open a terminal and execute the following

go install github.com/jwmwalrus/bumpy@latest

The same command can be used for subsequent updates.

Usage

Bumpy Ride is intented to be used both as a subpackage and as a command-line tool.

As a subpackage, bumpy/version permits access to the vcs-related details stored either in a version.json file, or in the runtime/debug.BuildInfo.

As a command-line tool, bumpy allows for the propagation of tag changes, according to semantic versioning rules. It also can, optionally, store the repository's current version in the version.json file at the root of said repository.

An overview of the available commands and options can be obtained by executing

bumpy --help

The available commands can be categorized into three groups: control, git-affecting and informational.

Control Commands

These commands allow for manipulation of the version.json file that stores the repository's current version.

init

The init command initializes the repository's version --i.e., it creates the configuration and (optionally) the version files.

Detailed information aobut the init command can be otained with:

bumpy help init
config

The config command updates the repository's version configuration file, according to the provided options, and displays its resulting contents.

Detailed information aobut the config command can be otained with:

bumpy help config
sync

The sync command makes sure that the version stored in version.json matches the latest git tag available.

Detailed information aobut the sync command can be otained with:

bumpy help sync
Git-affecting Commands

These commands may perform operations on the version.json file, and cause at least one commit and/or other git-related operations.

bump

The bump command updates the version.json file, and any associated package[-lock].json files, according to the given set of options.

Detailed information aobut the bump command can be otained with:

bumpy help bump
tag

The tag command commits the ChangeLog.md file, and tags its commit with the latest version from version.json.

Detailed information aobut the tag command can be otained with:

bumpy help tag
Informational Commands

These commands simply display information.

version

The version command shows the current version stored in the version.json file, if available, or the latest git tag.

Detailed information aobut the version command can be otained with:

bumpy help version

TODO

  • Implement the init task
  • Implement bump [--major|--minor|--patch] task
  • Implement bump [--pre PRE] [--build BUILD] task
  • Implement tag task
  • Implement sync task
  • Implement version task
  • Implement version configuration
  • Implement version operators
  • Allow tagging with an arbitrary list of files

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
internal
pkg
git

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL