If you edit a file you are visiting with another editor, GNU Emacs will warn you. If a programme updates a file that you are visiting, GNU Emacs will warn you.
If you revisit a file that is already in one of your buffers, then GNU Emacs will simply go to that buffer.
If you visit a file in GNU Emacs, and then edit and save that same file in nano, as soon as you try to edit in the Emacs buffer again (not just when you save), you will get a warning that the file has changed on disk and some options.
If you visit a file and then, say, open a few more buffers and do other stuff (the usual thing), and then revisit that file later (eg. with C-x C-f or by hitting "enter" in dired) then GNU Emacs will not open a new buffer but will simply go back to the previous buffer you already have with that file.
Note: I'm using GNU Emacs 22 in gNewSense GNU/Linux