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