Jupp, verschieben und änderungen sollte man in getrennten Commits ablegen.
GIT will das unbedingt automatisch machen.
SVN hat sich genau gemerkt welche Datei zu welcher kopiert/verschoben wurde,
aber GIT speichert das nicht und verlinkt es zur Laufzeit, also macht "life" aus einem Delete und Add ein "Move", was dann aber nicht immer der Wirklichkeit entsprechen muß, wenn die Heuristik es nicht hinbekommt Quelle und Ziel richtig zusammenzubekommen.
Sei es weil mehrere gleiche/ähnliche Dateien verschoben wurden, oder weil gleichzeitig noch Änderungen
in den Dateien enthalten sind. Sowie bei "zu viel auf einmal" schaltet sich die Heuristik auch ab.