idcos / osinstall-server

OSInstall server
GNU General Public License v3.0
63 stars 54 forks source link

版本信息中的时间戳信息未能达到预期目的--记录程序的编译时间 #8

Closed voidint closed 5 years ago

voidint commented 7 years ago

main.go这个源代码文件中定义了一个变量

var date = time.Now().Format("2006-01-02")
var version = "v1.3.1 (" + date + ")"

变量version的本意是为了记录编译时间,但这个时间戳真实反映的是程序的运行时间,而非编译时间。原因也很容易理解:变量是在程序运行时分配内存赋值的。

把时间精度提高,比如var date = time.Now().Format(time.RFC3339),重新编译后多次执行cloudboot-server -v,会发现每次的版本信息中的时间戳都是不同的。这也印证了以上的猜测。