Patch Set 1:

I think that it always would be useful. In "worst case" both nodes (local and remote) would be expanded with can be helpful IMHO. As far as I understood this code it will select given branch, or expand local branch node and then expand remote branch node so in many cases both nodes would be expanded with isn't bad idea IMHO