Git and GitHub are awesome tools for developers. Version control systems have been used for quite some time and for good reasons. Git, its distributed approach and GitHub’s social coding features like pull requests for instance have introduced a whole new dimension to collaborative software development.
Having worked together with a web designer on a project recently I came up with a small solution involving Dropbox. Using Dropbox is as easy as using normal file management tools like Finder or Windows Explorer and it allows you to easily share specific folders. Problem is, Dropbox lacks features of version control systems like source code history and branches. This is perfectly alright since Dropbox isn’t supposed to be a version control system in the first place.
So, I combined the ease-of-use of Dropbox with Git’s version control features by simply checking out my Git repository from Github as usual, however placing it in my Dropbox folder so I could synchronize and share it with the project’s web designer. As soon has he makes changes to files those are synchronized with my Dropbox folder and all I have to do is commit and push them back to the Github repository.
Because I didn’t want Dropbox meta files to show up in the repository I added the following lines to the project’s .gitignore file:
# Ignore DropBox files