Files
Yevhen Odynets 736921ae0b cosmetic changes
2026-09-01 09:05:27 +03:00

267 lines
14 KiB
Plaintext

# =============================================================
# .gitattributes — Universal JetBrains / Multi-Stack Template
# Covers: PHP, Go, TypeScript, JavaScript, Rust, Dart/Flutter,
# Python, Ruby, HCL/Terraform, SQL, HTML, CSS, DevOps
# =============================================================
# ─────────────────────────────────────────────────────────────
# DEFAULTS: LF everywhere, CRLF only for Windows-specific files
# ─────────────────────────────────────────────────────────────
* text=auto eol=lf
*.bat text eol=crlf
*.cmd text eol=crlf
*.ps1 text eol=crlf
*.psm1 text eol=crlf
*.psd1 text eol=crlf
# ─────────────────────────────────────────────────────────────
# PHP
# ─────────────────────────────────────────────────────────────
*.php text diff=php
*.phtml text diff=php
*.php8 text diff=php
# ─────────────────────────────────────────────────────────────
# Go
# ─────────────────────────────────────────────────────────────
*.go text diff=golang
go.sum text -diff
go.work.sum text -diff
# ─────────────────────────────────────────────────────────────
# TypeScript / JavaScript
# ─────────────────────────────────────────────────────────────
*.ts text diff=typescript
*.tsx text diff=typescript
*.js text diff=javascript
*.jsx text diff=javascript
*.mjs text diff=javascript
*.cjs text diff=javascript
# ─────────────────────────────────────────────────────────────
# Rust
# ─────────────────────────────────────────────────────────────
*.rs text diff=rust
Cargo.lock text -diff
# ─────────────────────────────────────────────────────────────
# Dart / Flutter
# ─────────────────────────────────────────────────────────────
*.dart text diff=dart
pubspec.lock text -diff
# ─────────────────────────────────────────────────────────────
# Lua
# ─────────────────────────────────────────────────────────────
*.lua text diff=lua
# ─────────────────────────────────────────────────────────────
# Python
# ─────────────────────────────────────────────────────────────
*.py text diff=python
*.pyi text diff=python
Pipfile.lock text -diff
# ─────────────────────────────────────────────────────────────
# Ruby
# ─────────────────────────────────────────────────────────────
*.rb text diff=ruby
Gemfile.lock text -diff
# ─────────────────────────────────────────────────────────────
# Web: HTML / CSS / Templates
# ─────────────────────────────────────────────────────────────
*.html text diff=html
*.htm text diff=html
*.blade.php text diff=html
*.templ text diff=html
*.twig text diff=html
*.njk text diff=html
*.ejs text diff=html
*.hbs text diff=html
*.mustache text diff=html
*.vue text diff=html
*.svelte text diff=html
*.css text diff=css
*.scss text diff=css
*.sass text diff=css
*.less text diff=css
# ─────────────────────────────────────────────────────────────
# Data / Config formats
# ─────────────────────────────────────────────────────────────
*.json text diff=json
*.jsonc text diff=json
*.json5 text diff=json
*.yaml text diff=yaml
*.yml text diff=yaml
*.toml text
*.xml text diff=html
*.svg text diff=html
*.env text
*.env.* text
*.ini text
*.cfg text
*.conf text
*.properties text
# ─────────────────────────────────────────────────────────────
# HCL / Terraform / HashiCorp stack
# ─────────────────────────────────────────────────────────────
*.hcl text diff=terraform
*.tf text diff=terraform
*.tfvars text diff=terraform
*.tfvars.json text diff=json
.terraform.lock.hcl text -diff merge=ours
# ─────────────────────────────────────────────────────────────
# SQL / Database
# ─────────────────────────────────────────────────────────────
*.sql text diff=sql
*.pgsql text diff=sql
*.mysql text diff=sql
# ─────────────────────────────────────────────────────────────
# Shell / Scripts
# ─────────────────────────────────────────────────────────────
*.sh text eol=lf
*.bash text eol=lf
*.zsh text eol=lf
*.fish text eol=lf
Makefile text eol=lf
*.mk text eol=lf
Dockerfile text eol=lf
Dockerfile.* text eol=lf
*.dockerfile text eol=lf
*.containerfile text eol=lf
# ─────────────────────────────────────────────────────────────
# Documentation
# ─────────────────────────────────────────────────────────────
*.md text diff=markdown
*.mdx text diff=markdown
*.rst text
*.txt text
*.adoc text
LICENSE text
AUTHORS text
CODEOWNERS text
# ─────────────────────────────────────────────────────────────
# Lock files — no diff noise, merge=ours
# ─────────────────────────────────────────────────────────────
*.lock text -diff merge=ours
*.lock.* text -diff merge=ours
package-lock.json text -diff merge=ours
yarn.lock text -diff merge=ours
pnpm-lock.yaml text -diff merge=ours
composer.lock text -diff merge=ours
bun.lockb binary
# ─────────────────────────────────────────────────────────────
# Generated files — hide from diff + GitHub stats
# ─────────────────────────────────────────────────────────────
*_templ.go linguist-generated=true -diff
*.pb.go linguist-generated=true -diff
*.gen.go linguist-generated=true -diff
*.generated.go linguist-generated=true -diff
*.generated.ts linguist-generated=true -diff
*.generated.php linguist-generated=true -diff
*_test.snap linguist-generated=true -diff
# ─────────────────────────────────────────────────────────────
# Binary: Images
# ─────────────────────────────────────────────────────────────
*.png binary
*.jpg binary
*.jpeg binary
*.gif binary
*.bmp binary
*.ico binary
*.webp binary
*.avif binary
*.tiff binary
*.tif binary
*.psd binary
*.ai binary
*.eps binary
# ─────────────────────────────────────────────────────────────
# Binary: Fonts
# ─────────────────────────────────────────────────────────────
*.ttf binary
*.otf binary
*.woff binary
*.woff2 binary
*.eot binary
# ─────────────────────────────────────────────────────────────
# Binary: Audio / Video
# ─────────────────────────────────────────────────────────────
*.mp3 binary
*.mp4 binary
*.wav binary
*.flac binary
*.ogg binary
*.opus binary
*.aac binary
*.m4a binary
*.webm binary
*.avi binary
*.mov binary
*.mkv binary
# ─────────────────────────────────────────────────────────────
# Binary: Archives / Executables
# ─────────────────────────────────────────────────────────────
*.zip binary
*.tar binary
*.gz binary
*.bz2 binary
*.xz binary
*.7z binary
*.rar binary
*.exe binary
*.dll binary
*.so binary
*.dylib binary
*.a binary
*.o binary
*.wasm binary
# ─────────────────────────────────────────────────────────────
# Binary: Documents / Data files
# ─────────────────────────────────────────────────────────────
*.pdf binary
*.doc binary
*.docx binary
*.xls binary
*.xlsx binary
*.ppt binary
*.pptx binary
*.db binary
*.sqlite binary
*.sqlite3 binary
# ─────────────────────────────────────────────────────────────
# Terraform state — never should be committed, but just in case
# ─────────────────────────────────────────────────────────────
*.tfstate binary
*.tfstate.backup binary
# ─────────────────────────────────────────────────────────────
# git archive export-ignore
# (files excluded from GitHub release tarballs)
# ─────────────────────────────────────────────────────────────
README.md export-ignore
CHANGELOG.md export-ignore
CONTRIBUTING.md.md export-ignore
SECURITY.md export-ignore
.editorconfig export-ignore
.env.example export-ignore
.gitattributes export-ignore
.gitignore export-ignore
.github export-ignore
docs export-ignore
tests export-ignore