浏览代码

更新版本号并添加版本显示功能

将项目版本从v0.1.0更新至v0.2.0,并在命令行参数中新增`-version`选项以显示当前版本号。当用户使用该选项时,程序将输出版本信息并退出。
SongZihuan 3 月之前
父节点
当前提交
7da4220e32
共有 4 个文件被更改,包括 12 次插入1 次删除
  1. 1 1
      VERSION
  2. 1 0
      src/flagparser/data.go
  3. 3 0
      src/flagparser/flag.go
  4. 7 0
      src/mainfunc/v1.go

+ 1 - 1
VERSION

@@ -1 +1 @@
-v0.1.0
+v0.2.0

+ 1 - 0
src/flagparser/data.go

@@ -9,6 +9,7 @@ var HttpsEmail = ""
 var HttpsCertDir = "./ssl-certs"
 var ACMEAddress = ""
 var DryRun = false
+var Verbose = false
 
 func Print() {
 	fmt.Println("HttpAddress:", HttpAddress)

+ 3 - 0
src/flagparser/flag.go

@@ -28,6 +28,9 @@ func InitFlag() (err error) {
 
 	flag.BoolVar(&DryRun, "dry-run", DryRun, "only parser the options")
 
+	flag.BoolVar(&Verbose, "version", Verbose, "show the version")
+	flag.BoolVar(&Verbose, "version", Verbose, "show the version")
+
 	flag.Parse()
 
 	Print()

+ 7 - 0
src/mainfunc/v1.go

@@ -3,6 +3,7 @@ package mainfunc
 import (
 	"errors"
 	"fmt"
+	resource "github.com/SongZihuan/Http-Demo"
 	"github.com/SongZihuan/Http-Demo/src/engine"
 	"github.com/SongZihuan/Http-Demo/src/flagparser"
 	"github.com/SongZihuan/Http-Demo/src/httpserver"
@@ -11,12 +12,18 @@ import (
 )
 
 func MainV1() (exitcode int) {
+	fmt.Printf("")
 	err := flagparser.InitFlag()
 	if err != nil {
 		fmt.Printf("init flag fail: %s\n", err.Error())
 		return 1
 	}
 
+	if flagparser.Verbose {
+		fmt.Printf("Version: %s", resource.Version)
+		return 0
+	}
+
 	if flagparser.DryRun {
 		return 0
 	}