Utilizando SkyDrive para hospedar seus repositórios

24/04/2012

Hoje o Google lançou o tão esperado serviço de armazenamento de arquivo, o Google Drive. Pode-se consider tardia a entrada do Google nesse mercado, uma vez que serviços como Dropbox e SkyDrive, da microsoft oferecem espaço há um certo tempo gratuitamente.

Baseado na experiência de usar o Dropbox para armazenar repositórios Git, como reportado neste post, adotei o serviço do SkyDrive para backup nas nuvens de alguns de meus dados, entre eles, projetos pessoais de desenvolvimento com php. Usando o Git local, manterei os dados sincronizados em minha conta no SkyDrive.

O ambiente utilizado neste tutorial: mac OS X Lion, git 1.7 e o aplicativo do SkyDrive instalado.

Acesse a pasta SkyDrive e inicie repositório git “remoto”

1
2
3
4
cd ~/SkyDrive/Git
mkdir projeto.git
cd projeto.git
git --bare init
1
2
#Saída no console
Initialized empty Git repository in /Users/vinicius/SkyDrive/Git/projeto.git/

Cria pasta do projeto e inicia repositório git local
Prepara as pastas de trabalho, onde ficará seu código fonte do projeto

1
2
3
4
cd ~/Works
mkdir projeto
cd projeto
git init

Resultado:

1
2
#Saída no console
Initialized empty Git repository in Works/projeto/.git/

Adiciona repositório “remoto” ao projeto local

1
2
3
4
5
git remote add origin ~/SkyDrive/Git/projeto.git
touch leia-me
git add leia-me
git commit -a -m "Iniciando projeto"
git push origin master:refs/heads/master

Resultado (esses números representam dados de meu projeto)

1
2
3
4
5
6
7
8
#Saída no console de meu projeto
Counting objects: 281, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (275/275), done.
Writing objects: 100% (281/281), 349.54 KiB, done.
Total 281 (delta 59), reused 0 (delta 0)
To /Users/vinicius/SkyDrive/Git/projeto.git
 * [new branch]      master -> master

Pronto! Sempre que realizado um commit e push em seu projeto local, o repositório será atualizado em sua pasta no SkyDrive, e sincronizado com os dados em cloud. Em caso de resgatar o backup em outra máquina, poderá realizar o clone do projeto:

Clonando o projeto do repositório

1
git clone ~/SkyDrive/Git/projeto.git