В state лежат ID, иногда секреты/пароли БД в plain attributes, плюс merge двух state почти гарантированно повредит карту ресурсов.
Разбор
- Используйте remote backend + шифрование at rest.
- В
.gitignore — *.tfstate* и .terraform/.
- Коммитьте код, lock-файл провайдеров, не state.
- Утечка state = потенциальный security incident.
Итог
State — runtime-данные с секретами; место ему в backend, не в git.