It depends on which flags John uses when he pushes.
By default, it will not be able to click because the remote branch (Dan commit) is not an ancestor of John's revision.
With -for, --forcehe will simply overwrite Dan with John, effectively canceling Dan, if the server is configured to allow force clicks, at least. Many git servers will simply refuse to do this.
, "" , . , , , - . git pull, . , . , (, "aBc", git add text.txt; git commit, git), " ", . .