Speaking from experience I can say that it is important to let XDPro determine what does and does not get published. If file names are changed outside of XDPro's interface, or files are uploaded manually, links will break and it all goes downhill from there. I've found that it is really important to test your whole site in XDPro before you upload it. When it's all working 100% properly on your PC you can either get XDPro to upload the whole shebang or get XDPro to only upload what has changed since the last upload. This clever scheme will fail totally if it is circumvented by manual uploads, file renaming, etc.

Regarding versions of websites: When I have a website open in XDPro and I make some changes I simply save the whole .xar project with a new numeric suffix. That then becomes the current version and the old .xars just sit in limbo as they were, a handy reference and a working backup of how it was "back then". You need a fair bit of storage if there's a lot of media included, but big hard drives are pretty cheap now.