25 lines
532 B
Go
25 lines
532 B
Go
package core
|
|
|
|
import "runtime/debug"
|
|
|
|
// Set via -ldflags "-X github.com/Jaculabilis/intake/core.Commit=..."
|
|
var Commit string = ""
|
|
|
|
func GetRevInfo() (rev string) {
|
|
rev = Commit
|
|
if rev == "" {
|
|
// No build data embedded, try from runtime/debug
|
|
if info, ok := debug.ReadBuildInfo(); ok {
|
|
for _, setting := range info.Settings {
|
|
if setting.Key == "vcs.revision" {
|
|
rev = setting.Value + rev
|
|
}
|
|
if setting.Key == "vcs.modified" && setting.Value == "true" {
|
|
rev = rev + "-dirty"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return
|
|
}
|