|
@@ -0,0 +1,47 @@
|
|
|
+package main
|
|
|
+
|
|
|
+import (
|
|
|
+ "bytes"
|
|
|
+ "fmt"
|
|
|
+ "io/ioutil"
|
|
|
+ "os"
|
|
|
+ "os/exec"
|
|
|
+ "strconv"
|
|
|
+)
|
|
|
+
|
|
|
+func main() {
|
|
|
+ b, err := ioutil.ReadFile("version")
|
|
|
+ if err != nil {
|
|
|
+ file, err := os.OpenFile("version", os.O_RDWR|os.O_CREATE, 0777)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ defer file.Close()
|
|
|
+ file.WriteString("v1.0.0")
|
|
|
+ return
|
|
|
+ }
|
|
|
+ fmt.Println("old version", string(b))
|
|
|
+ file, err := os.OpenFile("version", os.O_RDWR|os.O_TRUNC, 0777)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ defer file.Close()
|
|
|
+ bs := bytes.Split(b, []byte{'.'})
|
|
|
+ lb := bs[len(bs)-1]
|
|
|
+ i, err := strconv.Atoi(string(lb))
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ bs[len(bs)-1] = []byte(fmt.Sprintf("%d", i+1))
|
|
|
+ tb := bytes.Join(bs, []byte{'.'})
|
|
|
+ fmt.Println("new version", string(tb))
|
|
|
+ file.Write(tb)
|
|
|
+ cmd := exec.Command("git", "add", "./version")
|
|
|
+ err = cmd.Run()
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ }
|
|
|
+}
|