No description, website, or topics provided.
Shell Ruby
Latest commit 4db787d Jun 22, 2013 @rcrowley rcrowley Merge pull request #12 from wesyah234/master
Please consider this small change.. .I just overwrote my existing authorized_keys file.  This change will prevent that.  Thanks
Failed to load latest commit information.
bin Always use the system Ruby. Sep 30, 2010
man Rebuild manual. Dec 31, 2011
.gitignore Linux build system. Sep 22, 2010
HACKING Linux build system. Sep 22, 2010
Makefile New build tools. Jun 25, 2011 Update Mar 26, 2013
control.m4 v0.0.2 Sep 22, 2010

doubledown(1) -- sync local changes to a remote directory


doubledown [-i identity] local [user@]server:remote


doubledown brings local and remote on server into sync and then executes doubledown-fsevents(1) to watch local for changes.

An ssh-agent(1) is started if one cannot be found. Because doubledown will connect to server many times over its life, you must use an SSH key pair to authenticate. If you have not created an SSH key pair, do so with the following commands:

ssh-keygen -t rsa -b 2048 -f $HOME/.ssh/id_rsa
ssh <server> "echo $(cat $HOME/.ssh/ >>.ssh/authorized_keys"

When doubledown is run, rsync(1) is used to first download all files in remote on server that do not exist in local, thus no local changes will be clobbered. It then uploads any local changes. Finally, it executes doubledown-fsevents(1).


  • -i identity: Use a non-standard identity (private key). Analogous to the -i option to ssh(1).
  • -h, --help: Show a help message.


The Arcade Fire - "The Suburbs"


Richard Crowley


doubledown was written to make it easier for DevStructure users to use Textmate and other IDEs but it's far from the only way to skin the cat.

doubledown-fsevents(1) watches a directory and relays changes. It is called by doubledown.

The source code for doubledown is available at