Pular para o conteúdo principal

Gerador de .gitattributes

API reference

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

.gitattributes gerado
 
Isso foi útil?

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_HERE

Cole 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/MCPA 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

  1. Escolha uma regra global de quebra de linha — text=auto normaliza as quebras de linha no commit sem alterar o checkout, ou force uma quebra de linha específica no checkout com eol=lf/eol=crlf.
  2. Selecione todas as linguagens e frameworks que seu projeto usa na lista multisseleção — a saída é atualizada instantaneamente.
  3. 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.
  4. 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.
  5. Cole as regras específicas do seu projeto na caixa Custom Rules, uma por linha.
  6. Copie o resultado ou baixe-o diretamente como .gitattributes para 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.

gitattributesgitline endingscrlfeol normalizationgeneratordeveloper toolsversion controlmerge strategy

Ama as ferramentas? Livre-se dos anúncios.

Um único pagamento remove todos os anúncios da sua conta, para sempre. Sem assinatura, sem rastreamento.