diff options
author | Alan Pearce | 2025-03-04 10:51:11 +0100 |
---|---|---|
committer | Alan Pearce | 2025-03-04 10:51:11 +0100 |
commit | ca30c291884e7751dcd93378492502ac79847a5c (patch) | |
tree | 3661c18a20310a756f0ca8db36281ca3907e4574 /user/settings | |
parent | f291e3cf780d1dc2f834a17a06b8f54a91a417e5 (diff) | |
download | nixfiles-ca30c291884e7751dcd93378492502ac79847a5c.tar.lz nixfiles-ca30c291884e7751dcd93378492502ac79847a5c.tar.zst nixfiles-ca30c291884e7751dcd93378492502ac79847a5c.zip |
git: install mergiraf for semantic merging
Diffstat (limited to 'user/settings')
-rw-r--r-- | user/settings/git.nix | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/user/settings/git.nix b/user/settings/git.nix index b1750618..ae5947d5 100644 --- a/user/settings/git.nix +++ b/user/settings/git.nix @@ -70,6 +70,10 @@ in merge = { conflictStyle = "zdiff3"; }; + "merge.mergiraf" = { + name = "mergiraf"; + driver = "${pkgs.mergiraf}/bin/mergiraf merge --git %O %A %B -s %S -x %X -y %Y -p %P -l %L"; + }; diff = { algorithm = "histogram"; colorMoved = "plain"; @@ -159,11 +163,17 @@ in }; }; }; + xdg.configFile."git/attributes" = { + source = (pkgs.runCommandLocal "mergiraf-gitattributes" { } '' + ${pkgs.mergiraf}/bin/mergiraf languages --gitattributes >> $out + ''); + }; home.packages = with pkgs; [ git-extras # delete-merged-branches and friends git-worktree-switcher ghq # reduce these on server + mergiraf gitui gitstatus hut # sourcehut tools |