When on a branch baz, running arc diff-ing changes the commit baz points to.
For example, if the branch points to
, running arc diff mangles the commit message, creates a new commit and uploads that to Phabricator. Afterwards the local baz ref points to a commit like
. While the commits only differ in the commit message and metadata, arc diff's mangling of the baz ref makes commit's on top of the old baz no longer being on top of the new baz.
Example of running arc diff while on branch baz.
Before running arc diff (baz-orig and baz agree and are in the same subgraph):
. * d3b2f58 (quuz) quuz.txt . * 83a041b (HEAD, baz-orig, baz) Add baz.txt . * 855d3a1 (origin/master, origin/HEAD, master) Add foo10.txt
After running arc diff (baz-orig and baz no longer agree and are in the different subgraphs):
. * 8b9455d (HEAD, baz) Add baz.txt . | * d3b2f58 (quuz) quuz.txt . | * 83a041b (baz-orig) Add baz.txt . |/ . * 855d3a1 (origin/master, origin/HEAD, master) Add foo10.txt
Commit 8b9455d has been created by arc diff and the local branch baz has been made to point to this commit.