Yes, use version control. For everything. And when your tools don't play well with version control complain to your vendors that their tools are defective. A common cause of this is files with important user editable configuration mixed in the same file as ephemeral or unimportant information (such as recently opened files, window positions, or even just datestamps). Automated deployment tools should then fetch the appropriate code from version control so that you know what version is running in production.
Peer review is annoying but super valuable: people are less likely to commit garbage in the first place if they know someone will look at it, and peer review can catch style issues like using relative vs. absolute paths.
Relative paths or variable expansion can help of course but don't necessarily save you when you re-organize your project.