envs
CLI que mantiene los valores .env de todos tus git worktrees
en un solo archivo (.envs/values.yml). Edítalos juntos y
distribúyelos a cada worktree, o recógelos desde los
.env existentes.
Requiere Bun y git · @jondotsoy/envs en npm
Cómo funciona
Instalación
bun add -g @jondotsoy/envs
# o sin instalar
bunx @jondotsoy/envs help Comandos
Ejecútalos dentro del repo o de cualquiera de sus worktrees; `.envs/` siempre vive en el repo principal.
envs init Crea .envs/, su .gitignore y un values.yml vacío. envs pull Lee el .env de cada worktree y lo guarda en values.yml. envs push Escribe values.yml en el .env de cada worktree, conservando comentarios y variables ajenas. envs lint Revisa seguridad (secretos débiles, permisos, archivos versionados). Sale con código 1 si hay problemas. envs edit Hace pull, abre values.yml con code -w y, al cerrar, hace push. envs help Muestra la ayuda.
Formato de values.yml
defaults:
LOG_LEVEL: info
envs:
DATABASE_URL:
main: postgres://localhost/main
feature-x: postgres://localhost/feature_x
PORT:
main: 3000
feature-x: 3001 -
defaults: valor por defecto de cada variable;pushlo escribe en todos los worktrees. -
envs.<VARIABLE>.<worktree>: valor en ese worktree; sobrescribe adefaults. -
Los valores pueden ser strings, números o booleanos;
pushlos escribe como texto.