/ blog

Merge folders with Transmit

January 16, 2007, 4:16 pm · Filed under: Apple

Maybe I missed it, but I don’t see a good solution on the Mac for merging folders full of files. Well, today I really needed to do just that, so I figured out a way using only Panic’s excellent ftp program Transmit.

Today, my hard drive filled up. I guess it was the combination of the new camera I got for Christmas, the two-disc best of Pink Floyd set I ripped recently, and the 1.2GB video podcast I downloaded of the recent iPhone unveiling that did it. Whatever the cause, I needed to archive some bytes and didn’t want to spend all day doing it.

Sharing preference pane Step 1 Turn on “FTP Access”
(if it’s not already)
in the Sharing preference pane
of the System Preferences.

Transmit interface Step 2 Use Transmit to connect
to your Mac as if it were a
remote server.

Transmit's merge files dialog Step 3 Start your download.
When presented with the option,
choose to “Merge” the folders.

My first stop on the merging folders express was FileMerge, a utility included with Apple’s Xcode. It looked like it might do the trick (and was even recommended by a prominent Mac mag), but apparently it compares not only the contents of two folders, but the contents of the files in two folders. (Which makes sense, considering it is used by programmers to find differences between source files.)

Needless to say, my PowerBook’s meager 1GHz G4 processor was quickly overwhelmed trying to compare a couple thousand big, binary MP3 and AAC files.

After force quitting FileMerge, I thought to myself, “Self, all I need is something like Transmit’s merge folders feature.” Then it struck me. Why not use my Mac’s built-in ftp server to fool Transmit into thinking it’s connected to a remote server? Then, I can use the merge folders feature!

Sure enough, it worked like a charm with sustained copies of over 4500 KB/s from my built-in hard drive to the USB 2.0 external drive to which I was backing up. To the left is the step-by-step for those who wish to duplicate this awesome feat of folder mergerality.

The only issue I ran into is that Transmit seems to need to confirm whether to skip or replace files on a folder-by-folder basis. Even so, this technique is about a gazillion times faster than tyring to merge two big folders by hand.

This entry was first published on Newfangled Telegraph, my former freelancing website.