git merge -Xignore-space-change by default

git, git-config, git-merge, merge

Solution

Per-branch:

git config branch.$branchname.mergeoptions "-X ignore-space-change"

found by scanning the git config docs for "merge". If there's a global option setter I don't see it, a git alias would probably do it:

git config alias.i-s-c-merge "merge -X ignore-space-change"

and I think every shell has tab completion on git commands these days so it's `git i-` and tabkey instead of spacebar.

Problem

How can I set the option `ignore-space-change` for all merges using `git config`? I could perhaps use an alias on `merge`, but since I want that setting to apply to `git stash pop`, `git stash apply`, `git pull` and `git merge`, and others if any, I'd like a cleaner way than setting up many aliases (I don't even know if I could set up an alias `stash` for the subcommands). I looked in the docs, but couldn't find the configuration option to use.

Original source

Related problems