Using external diff tool is inconsistent for modified and added files
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Bazaar |
Confirmed
|
Medium
|
Unassigned |
Bug Description
I'm using an external diff tool with bzr. I've set my diff alias like so:
bzr alias diff="diff --using=
Then I start a diff using the regular `bzr diff` command. When bzr reports modified files, it correctly communicates with the external app (Kaleidoscope), which shows the differences for those modified files. However, when it comes to an added file (not a modified file), bzr barfs with the following errors:
=== added file 'blahgitty copia.txt'
diff: extra operand `bzr'
diff: Try `diff --help' for more information.
bzr: ERROR: external diff failed with exit code 2; command: ['diff', '--label', u'blahgitty copia.txt\
My external diff tool isn't called at all. bzr seems to be passing the parameters to the tool "diff", not to "ksdiff-wrapper", as I had specified in my diff alias.
It seems that maybe diff alias expansion isn't working for added files, but it is for modified files? Is my assessment here correct, or am I doing something wrong?
tags: | added: check-for-breezy |
Indeed, it seems that added files do not use the program given by --using but do take note of --diff-options which rather breaks your otherwise reasonable looking alias.