awesome-repositories.com
Blog
awesome-repositories.com

Descoperă cele mai bune repository-uri open source cu căutare AI.

ExploreazăCăutări recomandateAlternative open-sourceSoftware self-hostedBlogHartă site
ProiectDespreCum realizăm clasamentulPresăServer MCP
LegalConfidențialitateTermeni
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
gitattributes avatar

gitattributes/gitattributes

0
View on GitHub↗
3,814 stele·592 fork-uri·Git Attributes·MIT·1 vizualizare

Gitattributes

This project is a library of standardized specifications and templates for managing version control attributes, line ending normalization, and language-aware diff strategies. It provides a framework for defining how a version control system treats specific file extensions to ensure cross-platform consistency and prevent file corruption.

The project distinguishes itself by offering a comprehensive configuration library for managing binary files, diff drivers, and repository metadata. It includes specialized diff strategy management and a repository metadata standard that maps custom file extensions to programming languages for correct syntax highlighting and identification.

The capability surface covers line ending management to enforce consistent end-of-line characters across operating systems and file handling rules that designate assets as either text or binary. It also includes language-specific configurations for various programming languages, metadata management for syntax mapping, and storage optimization strategies to redirect large binary assets to external storage.

A command-line utility is provided to scan project files and verify attribute coverage, ensuring all assets are governed by the necessary configuration rules.

Features

  • Line Ending Standards - Enforces consistent end-of-line characters across different operating systems through automated conversion during commit and checkout.
  • Attribute Template Libraries - Provides a comprehensive library of standardized attribute templates for managing how files are handled by version control.
  • Syntax Highlighting Rules - Maps custom or uncommon file extensions to programming language identifiers for correct syntax highlighting.
  • Diff Routing Configurations - Assigns specialized diffing algorithms to specific file extensions to optimize the visualization of code changes.
  • Diff Strategy Managers - Provides a configuration resource for assigning language-aware diffing algorithms to improve change readability.
  • Language-Aware Diff Configurations - Assigns specialized diffing algorithms to specific programming languages to improve the readability of code changes.
  • Syntax Mapping Metadata - Assigns programming language identifiers to custom file extensions to enable correct syntax highlighting.
  • Text Normalization - Configures automatic line-ending normalization and language-specific diff drivers to ensure consistent version control.
  • Git Attribute Configurations - Offers a collection of standardized .gitattributes templates for managing line endings, binary files, and diff drivers.
  • Attribute Mapping Rules - Maps file extensions to specific version control attributes using a set of predefined matching rules.
  • Binary Attribute Management - Marks specific file extensions as binary to prevent text-based corruption and enable proper binary diffing.
  • Binary-Text Designation Rules - Implements a system to categorize files as text or binary to prevent corruption and optimize merge strategies.
  • File Attribute Assignments - Specifies how file types are handled by assigning text or binary markers and defining custom diff logic.
  • File Handling Rule Definitions - Defines how a version control system treats specific file extensions by designating them as text or binary.
  • File Type Identification - Specifies how version control systems identify and handle file types to ensure consistent language detection.
  • Language Labeling - Assigns specific language labels to files so version control systems categorize and highlight them correctly.
  • Text and Binary Designations - Defines which files are treated as text or binary and specifies the appropriate diffing tool for source code.
  • VCS File Attribute Specifications - Defines rules for how Git treats specific file extensions to ensure cross-platform consistency and prevent corruption.
  • VCS File Handling Specifications - Defines whether specific file extensions are treated as text or binary to manage merges and storage.
  • Syntax-Aware Diffing - Associates specific file extensions with language-aware diffing tools to improve the readability of version control changes.
  • Attribute Coverage Scanners - Provides a CLI utility to scan projects and identify files lacking necessary configuration rules.
  • Attribute Coverage Verifiers - Provides a CLI utility that scans project files to identify those lacking configuration rules.
  • Whitespace Enforcement - Enforces consistent line endings and whitespace rules across text files to prevent formatting discrepancies.
  • Custom Diff Tool Assignments - Allows the assignment of specialized diffing algorithms to specific file extensions for better readability of changes.
  • Diff Operation Definitions - Specifies how different file types are compared and displayed during diff operations to improve readability.
  • Archive Export Exclusions - Allows marking internal configuration and metadata files for exclusion when generating project archives.
  • Language Mapping Standards - Provides a framework for mapping custom file extensions to programming languages for correct syntax highlighting.
  • External Asset Storage - Directs large assets and binary files to external storage to prevent repository bloat.
  • Go Attributes - A configuration that treats Go files as binary to prevent automatic line-ending conversions and ensure consistent line-feed handling across operating systems.
  • Java Rules - A configuration defining how specific file extensions are treated regarding line endings, text normalization, and diffing for Java-based projects.
  • Pascal Rules - A configuration defining which Pascal files are treated as text or binary and applying language-specific diffing to improve version control visibility.
  • Perl Specifications - A configuration specifying that Perl source files are treated as text and use a language-specific diff algorithm for cleaner version control history.
  • Python Specifications - A configuration defining text, binary, and line-ending attributes for Python files to ensure consistent diffs and prevent binary corruption.
  • Large File Storage (LFS) - Marks large binary assets for external storage to prevent repository bloat and maintain performance.
  • PHP Specifications - A configuration defining line ending normalization, text detection, and language-specific diffing for PHP files to ensure cross-platform consistency.
  • Swift Specifications - A configuration defining how Swift source and project files are treated to ensure correct line endings and specialized diffing for merges.
  • Configuration Templates - Uses a library of standardized attribute templates to ensure consistent file handling across languages and platforms.
  • Cross-Platform Development Utilities - Standardizes file attributes and syntax mapping to ensure consistent behavior across diverse developer machines.
  • Ruby Strategies - A set of language-specific diffing and merge strategies for Ruby projects to ensure consistent version control behavior across files.

Istoric stele

Graficul istoricului de stele pentru gitattributes/gitattributesGraficul istoricului de stele pentru gitattributes/gitattributes

Căutare AI

Explorează mai multe repository-uri excelente

Descrie ce ai nevoie în limbaj simplu — AI-ul sortează mii de proiecte open source selectate în funcție de relevanță.

Start searching with AI

Întrebări frecvente

Ce face gitattributes/gitattributes?

This project is a library of standardized specifications and templates for managing version control attributes, line ending normalization, and language-aware diff strategies. It provides a framework for defining how a version control system treats specific file extensions to ensure cross-platform consistency and prevent file corruption.

Care sunt principalele funcționalități ale gitattributes/gitattributes?

Principalele funcționalități ale gitattributes/gitattributes sunt: Line Ending Standards, Attribute Template Libraries, Syntax Highlighting Rules, Diff Routing Configurations, Diff Strategy Managers, Language-Aware Diff Configurations, Syntax Mapping Metadata, Text Normalization.

Care sunt câteva alternative open-source pentru gitattributes/gitattributes?

Alternativele open-source pentru gitattributes/gitattributes includ: sds/overcommit — Overcommit is a Git hook manager and pre-commit validation framework designed to automate the execution of scripts and… diffplug/spotless — Spotless is a multi-language formatting orchestrator and Gradle plugin that automates code styling across various… wilfred/difftastic. sheerun/vim-polyglot — vim-polyglot is a multi-language Vim plugin that provides a comprehensive bundle of syntax highlighting, automated… checkstyle/checkstyle — Checkstyle is a Java static analysis tool and linter designed to identify and enforce coding standards and best… pre-commit/pre-commit-hooks — This project is a comprehensive collection of pre-commit hooks designed to automate code linting, style enforcement,…

Alternative open-source pentru Gitattributes

Proiecte open-source similare, clasificate după numărul de funcționalități comune cu Gitattributes.
  • sds/overcommitAvatar sds

    sds/overcommit

    4,008Vezi pe GitHub↗

    Overcommit is a Git hook manager and pre-commit validation framework designed to automate the execution of scripts and checks during various Git events. It serves as a workflow automation tool that ensures code quality and project standards are met before changes are committed or pushed to a remote repository. The system distinguishes itself through a comprehensive YAML-based configuration that allows for detailed hook behavior control, including file execution filtering, conditional skipping, and the management of hook dependencies. It provides specialized roles such as a commit message vali

    Ruby
    Vezi pe GitHub↗4,008
  • diffplug/spotlessAvatar diffplug

    diffplug/spotless

    5,527Vezi pe GitHub↗

    Spotless is a multi-language formatting orchestrator and Gradle plugin that automates code styling across various programming languages within a single build pipeline. It functions as a coordinator for multiple third-party formatters, a code style linting tool, and a system for inserting and updating standardized license headers. The project distinguishes itself through git-integrated style enforcement, using pre-push hooks and git references to apply formatting only to modified files or lines. It supports shared build configurations, allowing formatting rules to be distributed and loaded acr

    Java
    Vezi pe GitHub↗5,527
  • wilfred/difftasticAvatar Wilfred

    Wilfred/difftastic

    24,175Vezi pe GitHub↗
    Rustdifftree-sitter
    Vezi pe GitHub↗24,175
  • sheerun/vim-polyglotAvatar sheerun

    sheerun/vim-polyglot

    5,719Vezi pe GitHub↗

    vim-polyglot is a multi-language Vim plugin that provides a comprehensive bundle of syntax highlighting, automated indentation management, and filetype detection for a wide variety of programming and configuration languages. It serves as a single installation to streamline the development environment by providing integrated support for numerous languages. The project functions as a language support bundle that combines syntax highlighting packs with an indentation manager. It uses both extension-based filetype detection and pattern-based language identification to apply the correct visual for

    Vim Script
    Vezi pe GitHub↗5,719
Vezi toate cele 30 alternative pentru Gitattributes→