When a file changes on disk outside of my text editor it's nearly always because I:
- modified it in another editor, or
- used git to switch branches.
(global-auto-revert-mode 1)in my ~/.emacs. I've not found a situation where this makes emacs do something other than what I would want it to do.