Fazem quase 2 anos que utilizo o Git para várias coisas, inclusive para controle de versão.
Cheguei a utilizar repositórios privados do GitHub, e funcionam muito bem. Entretanto possuem a limitação de espaço e quantidade (eu usava o plano Micro, que permite até 5 repositórios privados).
A alternativa: Dropbox.
Ou mais:
Acesse a instância por ssh.
ssh -i sua_chave.pem ubuntu@seu_ip
É necessário baixar o Dropbox. Caso a versão do Ubuntu seja 64 bits:
cd ~ && wget -O - "https://www.dropbox.com/download?plat=lnx.x86_64" | tar xzf -
Se for 32 bits:
cd ~ && wget -O - "https://www.dropbox.com/download?plat=lnx.x86" | tar xzf -
Agora é necessário rodar o daemon do Dropbox que está na pasta recém criada.
~/.dropbox-dist/dropboxd
Você precisará copiar o link que aparece no seu navegador para adicionar o servidor à sua conta. Assim que você fizer isso, será criada a pasta Dropbox
no seu diretório ~
.
Para controlar o Dropbox a partir da linha de comando, é só baixar esse CLI:
mkdir -p ~/bin
wget -O ~/bin/dropbox.py "http://www.dropbox.com/download?dl=packages/dropbox.py"
chmod +x ~/bin/dropbox.py
E para utilizá-lo:
~/bin/dropbox.py help
Não sincronizar todas as pastas
Eu não gosto de deixar todas as minhas pastas sincronizadas com o Dropbox da minha instância EC2, então eu removo aquelas que não desejo (na verdade removo todas, deixo apenas a pasta que fica os repositórios).
~/bin/dropbox.py exclude add NOME_DA_PASTA
Para ver quais pastas estão excluídas da sincronização:
~/bin/dropbox.py exclude list
Caso o processo comece a dar problema, basta:
$ ps -e | grep dropbox
3892 ? 00:01:07 dropbox
$ kill 3892
$ ~/bin/dropbox.py start
Starting Dropbox...Done!