Optimize fetching of a branch changeset

If a change is only a branch operation and we already have a file at the
target path, then there is nothing to do for that change.

close #303