Я пишу два двоичных файла, и оба они используют две библиотеки (мы можем называть их 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'"
). Но этот способ не кажется масштабируемым, как добавить libC? Это также подразумевает управление тегами два раза, один раз для git и один раз в goreleaser.yml или makefile.
Вы можете помочь мне найти решение?