Olá, Henrique!
Entendo suas preocupações com o comando terraform init. Basicamente, o comando terraform init é usado para inicializar um diretório de trabalho contendo arquivos de configuração do Terraform. Isso inclui a preparação de vários back-ends locais, bem como a instalação de plugins de provedor.
A boa notícia é que, em geral, você só precisa executar terraform init uma vez para cada novo projeto. No entanto, existem algumas situações em que pode ser necessário executá-lo novamente, como:
- Quando você adiciona ou remove arquivos de configuração do Terraform no seu diretório.
- Quando você adiciona ou altera módulos que seu projeto está usando.
- Quando você atualiza a versão do Terraform.
Em relação ao tamanho da pasta .terraform, isso se deve ao fato de que o Terraform baixa os plugins dos provedores que você está usando (AWS, Google Cloud, etc.) e os armazena nesta pasta.
Se o tamanho for uma preocupação, você pode considerar adicionar .terraform ao seu arquivo .gitignore para evitar que ele seja enviado para o seu repositório Git. Além disso, você pode excluir a pasta .terraform e executar terraform init novamente quando precisar.
Espero ter ajudado e bons estudos!