Using Dropbox as a remote for git
Thu Mar 24 04:36:51 2011
Setting up a git remote on Dropbox is great for backing up and sharing projects with other people. Here's how to get started.
Getting a local repository started
First off open a Terminal window and create a project folder. I'm going to make one in my ~/Sites folder of my mac using the command mkdir (make directory) and cd (change directory) inside.
cd ~/Sites/ mkdir project cd project
Next create a git repository inside the folder project
When you want to add files that are saved in the projects folder to the repository, use the
commit commands. For example, say you have the file index.html in your project folder, use
git add * where * means everything/all, but can be a specific file name such as index.html. Using the command
git status will show you if any changes have been made or/and if there are any untracked files that exist in the directory. Right now, no files have been commited to the repository, so the 'index.html' should be displayed. Run the following to commit to the repository:
git commit -a -m "Initial commit"
-m followed by a message in between
" " will be the message that is display in the log/history of changes. After commiting changes, run
git log to view the git history.
Creating and "Pushing" to a Remote (i.e. Dropbox)
Now, in the same way we created a directory for the project, we have to also make a directory for the remote branch. I will make one called "Repository" in the root of Dropbox and then make another folder inside that called project.git, for sake of ease.
cd ~/Dropbox mkdir Repository cd Repository mkdir project.git cd project.git
Now that we're inside project.git, let's create a bare repository
git init --bare
Now, all that's left is to add our Dropbox remote to the repository of our project and push to it. (We'll have to cd back into the local project folder for that)
cd ~/Sites/project git remote add origin ~/Dropbox/Repository/project.git git push origin master
Now, if everything went OK, you should be able to run
git log from inside ~/Dropbox/Repository/project.git and view the same log as ~/Sites/project.
Pulling from the Dropbox Remote
Let's say that you are now on a different computer with access to Dropbox. It's really easy to
pull files from the remote and code anywhere!
cd ~/Sites git clone -o Dropbox file://$HOME/Dropbox/Repository/project.git
You should now see the new project folder on inside your ~/Sites folder as it was when you left if on your other computer!
Just rememeber to push any changes made here to the Dropbox remote and then
git pull origin master will pick things up again on any other computers that have cloned the repository. Cool eh? Saves room in my pockets where a USB drive used to be :)