ifcurl/forgejo/server-config/gitattributes
Bruno Postle 27883e468e forgejo: document ifcmerge mergeability — bare repo gitattributes finding
Investigation confirmed: Forgejo's git merge-tree --write-tree (git ≥2.38)
does invoke configured merge drivers for .ifc files.

Key finding: bare repositories do NOT read committed .gitattributes — the
merge driver is silently skipped without a system-wide core.attributesFile.

Changes:
- server-config/gitattributes: new file to deploy at /etc/gitattributes,
  containing "*.ifc merge=ifcmerge"
- server-config/gitconfig-ifcmerge: adds [core] attributesFile = /etc/gitattributes
  and explains the bare-repo constraint
- forgejo/README.md: rewrites ifcmerge section with investigation findings,
  deployment steps, and distinction between server-side vs client-side setup

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 09:27:56 +01:00

12 lines
467 B
Text

# System-wide gitattributes for the Forgejo server.
# Reference this file from /etc/gitconfig:
#
# [core]
# attributesFile = /etc/gitattributes
#
# This causes git merge-tree --write-tree (used by Forgejo's mergeability
# check) to invoke ifcmerge for .ifc files in bare repositories.
# Committed per-repo .gitattributes files are NOT read by git in bare-repo
# context and are therefore insufficient for the server-side conflict check.
*.ifc merge=ifcmerge