For the current reality that is directories and files, you can get pretty far with sed, grep, git grep, shell scripting, find -type f -name 'foo' -exec ... '{}' ';', etc, etc...
If some alternate reality existed, based on some other data structure / schema... I guess some other set of tools and workflows would be needed to find and move whatever the new name for blobs of bytes (files) would be...
If some alternate reality existed, based on some other data structure / schema... I guess some other set of tools and workflows would be needed to find and move whatever the new name for blobs of bytes (files) would be...