I was upgrading ModX today and tried to merge the new installation with the existing copy on my server. On their site ModX says to "merge directories", which I assume means to recursively copy every file down the directory tree of the new installation into the directory tree of the existing one, adding in new files but not replacing existing ones.
I first tried using rsync:
rsync -r --ignore-existing modx-2.5.5-pl/ httpdocs/
And the result was a mess. The installation was broken, and I had to replace it with a backup to get my old installation working again. I then used this command that I got off of ModX's website:
\cp -fr modx-2.5.5-pl/* httpdocs
This time everything worked perfectly.
What is the difference between the rsync command I ran and the cp command? From what I have been able to find, they should do the same thing.