Я пишу два двоичных файла, и оба они используют две библиотеки (мы можем называть их libA и libB).
Каждая библиотека находится в выделенном git репозитории с git -тегами объявлять версии. Например, libA - v1.0.9, а libB - v0.0.12.
Оба двоичных файла имеют флаги CLI, и я хотел бы добавить флаг отладки для отображения таких версий библиотеки:
> ./prog -d
Used libraries:
- libA, v1.0.9
- libB, v0.0.12
Я не знаю, как это сделать.
Я вижу единственный способ установить переменную "извне" - это использовать ldflags (например, go build -ldflags="-X 'main.Version=v1.0.0'"
). Но этот способ не кажется масштабируемым, как добавить lib C? Это также подразумевает управление тегами два раза, один раз для git и один раз в goreleaser.yml или make-файле.
Можете ли вы помочь мне найти решение?