newlisp獲取git標籤名並自動更改版本

在寫web頁面時, 經常會有版本更改. 如果有很多頁面, 就需要更改多個文件,比較麻煩. 

現有一種方法, 可以使用newlisp腳本自動從master分支獲取最新版本號, 並自動更改每個頁面的版本.

步驟:

1. 將代碼merge到發佈分支(一般是master分支)後, 在git網頁上可以建立標籤, 將標籤名設置爲版本號,如V1.0.0

2. 在編譯任何代碼之前,先運行newlisp腳本. 腳本內容如下:

#!/usr/bin/newlisp


;;get the latest tag of master branch

(define (get-latest-tag)
  (setf version ((exec "git tag") -1)) 
  (println version)
)

(define (rewrite-file f)
  (setf content (read-file (string "template/" f)))
  (setf new-content (replace "xxxx" content version))
  (setf r (delete-file (string "template/" f)))
  (println r)
  (append-file (string "template/" f) new-content)
) 

(define (rewrite-files)
  (setf files (exec "ls template/"))
  (dolist (f files)
    (rewrite-file f)
    )
)

(get-latest-tag)
(rewrite-files)
(exit)


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章