I have a folder on Drive 1 called Music, and it is 100GB. I have a folder on Drive 2 called Music, and it is 116GB. It's the most updated version. How do I copy the Music folder from Drive 2 to Drive 1 without having to rewrite every single file?
The merge option will only show up if you are copying (rather than moving) the folder. Make sure you hold option while you drag the new folder to the location of the old folder. Alternatively, using ⌘+c to copy the new folder and ⌘+v to paste over the old folder should give you the option to merge the files.
This is a classic use case for rsync:
rsync -av /source-path/source-dir /destination-path
rsync will copy only new and changed files to the new location.
It is important to understand how a trailing slash on the source argument functions. If there is a trailing slash then the contents of /source-path/source-dir will be copied to destination-path. If there is no trailing slash then source-dir itself will be copied to the destination and its contents will be another level down in the destination hierarchy.
So if you want to replicate one path to another include the trailing slash as follows:
rsync -av /sourcepath/sourcedir/ /duplicatpath/sourcedir/
First install coreutils first. Run
brew install coreutils. If you don't have
brew installed... switch back to windows!
cp --version outputs version cp (GNU coreutils) 8.^^
Then you will have the correct
cp version and the
-u flag will work.
cp command. Use
man cp and read the options.
You can do something like:
cp -r -u ~/source ~/destination
-R, -r, --recursive : copy directories recursively
-u, --update : copy only when the SOURCE file is newer than the destination file or when the destination file is missing
-p same as --preserve=mode,ownership,timestamps
-v --verbose : explain what is being done
So if you want to copy files from you Downloads/music folder to say your Music/new folder you would do something as:
cp -ruvp ~/Downloads/music/* ~/Music/new/
This would merge the contents of these two folders and if two files with the same name and path exist it would keep the newest one based on the timestamp.
Not sure why the default Lion Merge button doesn't show up for me. But I ended up using
ditto. Found here: https://superuser.com/a/221599/102789