ifcurl/forgejo/server-config/gitconfig-ifcmerge
Bruno Postle e824f9fd0e forgejo: systemd unit, ifcmerge driver docs; fix stale proxy mention
- forgejo/server-config/ifcurl-preview.service: systemd unit for the preview
  service with dedicated user, EnvironmentFile for cache config, and
  --allowed-hosts in ExecStart
- forgejo/server-config/gitconfig-ifcmerge: registers two [merge] driver
  variants (ifcmerge and ifcmerge_ours) for the asymmetric .ifc merge case
- forgejo/README.md: systemd deployment section (manual + service), ifcmerge
  section covering Perl script install, driver registration, per-repo
  gitattributes, and merge-direction constraint (merge-commit preserves main's IDs)
- README.md: remove stale "IFC file proxy" description; update quick-summary
  to show systemd install path

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

19 lines
854 B
Text

# Add to /etc/gitconfig (or ~forgejo/.gitconfig) on the Forgejo server.
#
# Two drivers are registered because the merge is asymmetrical — ifcmerge
# rewrites STEP IDs from %B to match %A's ID space. The base-branch must
# always be %A so its IDs are preserved.
#
# ifcmerge — use when the base branch is %A (standard 'merge commit')
# ifcmerge_ours — use when the base branch is %B (rebase direction);
# swaps the roles so base-branch IDs are still preserved.
# Requires ifcmerge to support --prefer-other; if not,
# use 'merge commit' strategy exclusively and omit this.
[merge "ifcmerge"]
name = IFC merge driver (base is ours)
driver = ifcmerge %O %A %B %L
[merge "ifcmerge_ours"]
name = IFC merge driver (base is theirs)
driver = ifcmerge %O %B %A %L