Para manter os arquivos gerados separados do código-fonte em um Mac, crie uma pasta de saída dedicada dentro do repositório e, em seguida, adicione essa pasta ao arquivo .gitignore do repositório. O Finder ajuda você a criar e inspecionar as pastas; as regras de ignore do Git mantêm a saída gerada fora dos commits futuros. Isso funciona para arquivos que o Git ainda não rastreia, portanto, verifique o status do repositório antes de depender disso.
Criar uma pasta de saída no Finder
Abra a pasta do repositório no Finder e crie uma pasta para a saída gerada, como build ou dist, usando Arquivo > Nova Pasta ou Shift-Command-N. Mantenha os arquivos de origem em seus locais existentes e configure sua ferramenta de build para gravar a saída nessa pasta. O nome da pasta deve corresponder ao caminho de saída real da ferramenta; criar apenas uma pasta não redireciona um build. A Apple documenta as etapas de criação de pastas do Finder em seu guia para organizar arquivos no Finder.
Se você não tiver certeza de quais arquivos são gerados, verifique a configuração da ferramenta de build ou a documentação do projeto antes de mover ou excluir qualquer coisa. Alguns arquivos gerados são exigidos pelo projeto ou intencionalmente controlados no repositório. Mantenha esses arquivos sob controle de versão se o projeto precisar deles.
Adicionar a pasta gerada ao .gitignore
Na raiz do repositório, crie ou abra um arquivo chamado .gitignore em um editor de texto. O Finder pode criar pastas e mover arquivos, mas não oferece controles de ignore do Git; o Git lê os padrões de ignore do .gitignore e de configurações relacionadas. Adicione uma regra para o diretório de saída, usando o caminho real relativo ao arquivo .gitignore. Por exemplo:
/build/
Uma barra inicial ancora esse padrão na raiz do repositório, e a barra final faz com que ele corresponda a um diretório. Se a sua saída gerada for aninhada, use o caminho dela, como /app/generated/. A documentação do gitignore do Git explica a correspondência de padrões e observa que as regras para todo o projeto pertencem ao .gitignore para que possam ser compartilhadas com outros clones.
Para uma pasta gerada local que não deve afetar outras pessoas trabalhando no repositório, adicione a regra a .git/info/exclude. O Git documenta isso como uma alternativa específica do repositório ao .gitignore. Use uma regra commitada no .gitignore quando a saída for gerada para todos no projeto e deva ser excluída para todos os colaboradores.
Confirmar a regra e lidar com arquivos já rastreados
Abra o Terminal e acesse o diretório do repositório. Verifique o status e pergunte ao Git qual regra se aplica a um caminho gerado:
git status --short
git check-ignore -v build/example-file
Substitua build/example-file por um caminho que exista sob a sua pasta de saída. A opção -v relata a regra de ignore correspondente e o arquivo que a contém. Se o Git relatar que não há correspondência, confirme o caminho e o padrão: os caminhos no .gitignore são interpretados em relação à localização do arquivo, e uma regra pode ser substituída por outra regra correspondente. A referência do check-ignore do Git descreve como inspecionar correspondências de ignore.
Uma regra de ignore não interrompe o rastreamento de arquivos já commitados ou preparados (staged) no Git. O Git afirma explicitamente que arquivos rastreados não são afetados por regras de ignore. Para remover do índice um arquivo gerado rastreado anteriormente, mantendo a cópia local no lugar, use git rm --cached com o caminho exato e revise a alteração antes de commitar. Por exemplo:
git rm --cached build/example-file
git status --short
Isso remove apenas o arquivo especificado do índice do Git; não remove automaticamente do rastreamento todos os arquivos em um diretório. Revise a saída de status, especialmente se pretende deixar de rastrear toda uma árvore de saída, antes de commitar a alteração. O guia do GitHub para ignorar arquivos também explica a distinção entre exclusões locais e regras compartilhadas do .gitignore.
Usar o Finder para inspecionar nomes, não para impor regras do Git
O Finder pode facilitar a inspeção de tipos de arquivo: acesse Finder > Ajustes > Avançado e ative Mostrar todas as extensões de nome de arquivo. Isso pode ajudar a distinguir um arquivo de origem de um arquivo gerado quando os nomes forem semelhantes. A Apple observa que, caso contrário, as extensões podem ficar ocultas e desaconselha alterar a extensão de um nome de arquivo apenas para mudar o formato do arquivo. Consulte as instruções da Apple para mostrar ou ocultar extensões de nomes de arquivos.
Portanto, a divisão confiável é: o Finder fornece uma pasta visível para a saída gerada, a ferramenta de build grava lá e as regras de ignore do Git excluem arquivos não rastreados qualificados do controle de versão. Verifique o caminho de saída real e o status do Git sempre que a configuração de build do projeto mudar.
Fontes
Ignoring files — GitHub Docs