Секреты не в коде и не в репозитории. В проде: переменные окружения (env), файлы (смонтированные в K8s из Secret), внешние хранилища (HashiCorp Vault, AWS Secrets Manager). В Go читать из os.Getenv или из файла при старте; не логировать. В разработке - .env (в gitignore) или default-значения. Ротация секретов без перезапуска - через периодическое чтение или callback при изменении.
secret := os.Getenv("DB_PASSWORD")
if secret == "" { log.Fatal("DB_PASSWORD required") }