Jul 28
2008
|
The Pastebin, EvolvedPosted by Nick Plante in Web Development, Debugging |
Pastebins are a simple tool for sharing code snippets for public viewing. They've existed seemingly forever and are incredibly popular in IRC (you do still use IRC, right?) where they're used to paste larger amounts of code for discussion, analysis, and debugging. In return for your text, you're given a nicely formatted syntax highlighted page whose URL you can paste into the channel. Typical examples include pastebin.com, pastie.org, and nopaste.info.
Last week, Git repository hosting service GitHub demonstrated a new twist on the boring but useful pastebin concept with their latest offering, Gist. The novell thing about Gist is that any code that is pasted by a user into the service ends up becoming its own Git repository...
This means that it can be cloned, forked (and corrected or improved upon by other users), modified, and pushed back to like any other version controlled piece of code. For instance, a user seeking help in IRC can paste a code snippet, then update it as they receive feedback from the channel -- either from the web form directly or by cloning, editing, and pushing a copy from their local development environment. Another user may choose to fork that repository and create their own version, which they could later push back to the original (given the original author's permission).
This is all good stuff, and also bodes well for Gist eventually being usable as a larger code snippets library (once proper search is implemented). However, perhaps what's most important is that the pastebin interface remains the same; users can still enter text through a simple form and are given back a URL they can paste into an IRC channel or share via email. This means that you don't have to be at all familiar with Git in order to take advantage of it for simple version control of code snippets. It also means that you can revise documents direclty through a browser, creating new commits and generating document history without understanding any Git-specific instructions.
This transparent application of version control to shared code snippets is what makes Gist a true joy to use; it has successfully lowered the barrier to entry for contributing to open source and maintaining versioned code snippet libraries. Does this mean that an in-browser ability to fork and directly edit open source projects hosted at GitHub is next? This could certainly be useful for contributing small changes, such as documentation patches.