Gerador de .gitattributes
Gere um arquivo .gitattributes: escolha a estratégia de normalização de quebras de linha, selecione linguagens, frameworks e tipos de arquivo binário em listas multisseleção pesquisáveis e adicione substituições de estratégia de merge para arquivos de lock e changelogs. Todas as escolhas são combinadas em um arquivo único, sem duplicações, pronto para colar.
Entrada
Escolha como as quebras de linha devem ser normalizadas, selecione todas as linguagens, frameworks e tipos de arquivo binário que seu projeto usa nas listas abaixo e adicione quaisquer substituições de estratégia de merge. Tudo é combinado em um único arquivo sem duplicações, logo abaixo.
Normalização de quebras de linha
text=auto normaliza as quebras de linha para LF no repositório, independentemente do que cada colaborador faz checkout. Adicione eol=lf/eol=crlf para também forçar uma quebra de linha específica no checkout.
Regras personalizadas
Acrescentadas sob um cabeçalho “Custom Rules”. Linhas que começam com # são mantidas como comentários.
Saída
Mais formas de usar esta ferramenta
API REST
curl -X POST https://api.iotools.cloud/v1/tool/gitattributes-generator \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"eolMode": "auto",
"groupLanguagesRuntimes": "[\"presetNode\"]"
}'Troque pela sua própria chave, da sua conta. Os campos da ferramenta viram o corpo da requisição — sem envelope.
Peça a um agente de IA
Use the IOTools `gitattributes-generator` tool (.gitattributes Generator) on this input:
YOUR_INPUT_HERECole isto em qualquer agente conectado ao servidor MCP do IOTools e depois adicione sua entrada.
Widget para incorporar
<iframe
src="https://iotools.cloud/embed/gitattributes-generator/"
width="100%" height="520" frameborder="0" scrolling="no" loading="lazy"
title="Gerador de .gitattributes — iotools.cloud"
sandbox="allow-scripts allow-forms allow-same-origin allow-downloads allow-popups allow-popups-to-escape-sandbox"
allow="clipboard-write"
style="width:100%;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden"></iframe>
<script src="https://iotools.cloud/embed.js" async></script>Coloque isso na sua própria página — grátis, sem chave, só um link de volta.
| Custo por chamada de API/MCP | A partir de 5 créditos |
|---|---|
| Precisa de mais créditos? | Ver preços |
Também disponível via
Guias
Crie um arquivo .gitattributes pronto para uso escolhendo uma estratégia de normalização de quebras de linha, selecionando as linguagens, frameworks e tipos de arquivo binário que seu projeto usa em listas multisseleção pesquisáveis e adicionando substituições de estratégia de merge para arquivos de lock e changelogs. O gerador combina todas as escolhas em um único arquivo limpo, sem duplicações.
O que é um arquivo .gitattributes?
Um arquivo .gitattributes informa ao Git como tratar caminhos específicos — se um arquivo é texto ou binário, para qual quebra de linha ele deve ser normalizado, qual driver de diff usar e como alterações conflitantes devem ser mescladas. Ele resolve o clássico problema de "todo arquivo aparece como alterado", causado por quebras de linha CRLF/LF misturadas entre colaboradores no Windows, macOS e Linux, e mantém ativos binários (imagens, fontes, arquivos compactados) fora de diffs de texto poluídos.
Como usar este gerador
- Escolha uma regra global de quebra de linha —
text=autonormaliza as quebras de linha no commit sem alterar o checkout, ou force uma quebra de linha específica no checkout comeol=lf/eol=crlf. - Selecione todas as linguagens e frameworks que seu projeto usa na lista multisseleção — a saída é atualizada instantaneamente.
- Selecione grupos de arquivos binários (imagens, fontes, arquivos compactados, documentos e mídia) para que o Git nunca tente comparar ou mesclar esses arquivos como texto.
- Adicione substituições de estratégia de merge (por exemplo, union merge para
CHANGELOG.md) quando as alterações de duas branches devem ser combinadas em vez de gerar conflito. - Cole as regras específicas do seu projeto na caixa Custom Rules, uma por linha.
- Copie o resultado ou baixe-o diretamente como
.gitattributespara a raiz do seu repositório.
Como a mesclagem funciona
Cada preset selecionado é escrito sob seu próprio cabeçalho # Nome, e as regras são desduplicadas globalmente: se dois presets declaram exatamente a mesma linha, ela é mantida apenas uma vez, sob o primeiro preset que a declarou. Isso significa que combinar uma linguagem, uma regra de arquivo de lock e um grupo binário nunca produz um arquivo cheio de linhas repetidas.
Por que os arquivos de lock recebem -diff -merge?
Arquivos de lock como package-lock.json, yarn.lock e Cargo.lock são gerados automaticamente e podem ser enormes — comparar ou tentar um merge de texto neles é lento e raramente útil. -diff os oculta de git diff/git show, e -merge força um conflito direto em vez de um merge automático embaralhado, então você sempre precisa regenerar o arquivo de lock após resolver os conflitos.
Onde o arquivo .gitattributes deve ficar?
Coloque-o no diretório de nível superior do seu repositório Git, assim como o .gitignore. As regras se aplicam a essa pasta e a todas as subpastas; adicione arquivos .gitattributes aninhados para substituições específicas de diretórios.
Os arquivos existentes precisam ser renormalizados?
Adicionar uma regra de quebra de linha afeta apenas os arquivos conforme o Git os relê. Execute git add --renormalize . uma vez após adicionar o .gitattributes para aplicar as novas regras aos arquivos já rastreados e, em seguida, faça commit do resultado.
Isso é privado?
Sim. Tudo é executado inteiramente no seu navegador — suas seleções e regras personalizadas nunca são enviadas a um servidor.
Para o arquivo complementar que também importa para quebras de linha e indentação consistentes, veja o EditorConfig Generator. Para gerar o arquivo que mantém artefatos gerados fora do seu repositório, use o Gitignore Generator. Precisa converter quebras de linha em arquivos que você já tem, em vez de declarar uma regra para os próximos? Experimente o CRLF/LF Line Ending Converter.