I'm still interested in something which tracks "moves" well. Moving a big block of text/code into a different file is still lacks the easy-to-see guarantee that the disappearing and appearing two blocks are the same. Do you know any techniques for this?
Moving a block of code within a file is just a delete+insert as well. I don't think git differentiates between moving something within a file and moving it between files the way other systems do, but as far as I know there aren't any systems that actually understand and track refactorings rather than tracking diffs.