It appears to me like the new files are missing. Files can be moved with git mv old-location new-location (or git add new-location, git rm old-location). git diff --cached will then have the correct diff. If not already set git config diff.renames true would be helpful before the diff, so that renames are detected as such.