aboutsummaryrefslogtreecommitdiff
path: root/main.go
diff options
context:
space:
mode:
authorMax Resnick <max@ofmax.li>2024-04-13 23:54:49 -0700
committerMax Resnick <max@ofmax.li>2024-04-13 23:54:49 -0700
commita303fdfd413a316c6934b837ab1c5e222722c0e8 (patch)
treeed744c0a9489aa7a8327455c7b9c472b26c34e16 /main.go
parentdd8b5e9750e8c075816f1bfdc84a6e44724fae12 (diff)
downloadgo-bumpver-a303fdfd413a316c6934b837ab1c5e222722c0e8.tar.gz
feat: add switch to print prior version0.2.0
Diffstat (limited to 'main.go')
-rw-r--r--main.go9
1 files changed, 8 insertions, 1 deletions
diff --git a/main.go b/main.go
index dba9462..8fd73a1 100644
--- a/main.go
+++ b/main.go
@@ -132,7 +132,9 @@ var (
validPartArgs = []string{"major", "minor", "patch"}
preReleaseFmtArgs = make(map[string]string)
preRelease bool
- rootCmd = &cobra.Command{
+ printLastVersion bool
+
+ rootCmd = &cobra.Command{
Use: "bumpver part [major|minor|patch] file [-|file]",
Short: "A tool for bumping semver git tags.",
Example: cmdExamples,
@@ -169,6 +171,10 @@ var (
if (lastVersion == &semver.Version{}) {
return errors.New("No tags found. Not doing anything")
}
+ if printLastVersion {
+ fmt.Fprint(cmd.OutOrStdout(), lastVersion)
+ return nil
+ }
versionPart := ""
if preRelease {
versionPart = part
@@ -274,6 +280,7 @@ func init() {
}
rootCmd.PersistentFlags().BoolVarP(&preRelease, "prerelease", "p", false, "create a prerelease tag for the (major|minor|patch)")
+ rootCmd.PersistentFlags().BoolVarP(&printLastVersion, "last-version", "l", false, "print version just before the bump that would occur")
rootCmd.PersistentFlags().String("prerelease-fmt", "PR.$KeyArg PR_NUM.$BumpInt", "The format string for prerelease versions")
rootCmd.PersistentFlags().StringToStringVarP(&preReleaseFmtArgs, "key-args", "k", nil, "key=arg for the fmt string")
rootCmd.PersistentFlags().String("repo-dir", cwd, "repo to examine")