В source указывают git::https://... и ref=v1.2.0 (tag) или commit SHA; floating main запрещают для prod — невоспроизводимо.
Разбор
- Semver tags для публичных/внутренних модулей.
- Pin SHA ещё жёстче для compliance.
- Обновление ref — отдельный PR с plan.
- Private git нужен credentials на init в CI.
Итог
Модули из git pin'ят по tag/SHA; ветка main для prod — риск.