I have been struggling to find a cheap way to have many private git repositories for quite some time now. Github is nice to keep all your public projects but charges you a reasonable amount per month if you want to have 50 private repositories. Then I thought, why not use Dropbox as a place to hold my private repositories?!? That sounds good, and after a quick search I found some websites explaining how to do it in less than 1 minute. I have followed the instructions written by Maurizio Turatti and Jimmy Theis, which I reproduce here in a more compact form. The following assumes you want to create a private repository located at ~/Dropbox/git/sample_project.git for your local project located at ~/projects/sample_project.
cd ~/Dropbox # Dropbox/git Will hold all your future repositories mkdir git # creates a sample_project.git folder to act as # a private repository cd git mkdir sample_project.git cd sample_project.git # Initialize your private repository. Using --bare # here is important. git init --bare # Initialize git in your local folder cd ~/projects/sample_project git init # Show the path of your private repository git remote add origin ~/Dropbox/git/sample_project.git # Now you can use git as usual git push origin master
After that you can work from your local folder and use push, pull, clone as if you were using Github. You can now share your Dropbox folder with your collaborators so that they can do the same. Just be careful if you use this with many collaborators since I believe conflict might happen if you both push content at the same time. So far I have used this solution to host my private projects that I am working on my own.
To test if everything is working try
git clone ~/Dropbox/git/sample_project.git ~/test
and check if the content of your project is in ~/test.