在寫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)