Search code examples
terminaldiffcustomizationperforce

changing p4 diff to diff doesn't work in ubuntu


As instructed in various places, I've updated the P4DIFF in an attempt to use diff as diff tool, but when I use p4 diff it keeps showing vimdiff.

export P4DIFF='diff'

This is in Ubuntu 14.04, do I need to do something special?

I tried giving the absolute path of diff, doesn't help.

set | grep P4DIFF
P4DIFF=diff

Solution

  • Run:

    p4 set P4DIFF
    

    That will tell you what the P4DIFF setting is and where it's coming from. My guess is that you have P4DIFF set in a P4CONFIG file in a parent of your working directory (which will trump globally set environment variables).

    If nothing is showing up there it means your env variable setting isn't persisting to whatever shell you're in now. Instead of trying to debug that I'd just do:

    p4 set P4DIFF=diff
    

    to set it to "diff" in the .p4env file. That should work everywhere -- note that you need to be on a somewhat current p4 executable (I forget the exact release .p4env was added, think it was about five years ago).