Speaking of GitHub as a Fluid App, I’ve whipped up a better icon. This one looks nicer in the dock and doesn’t get lost if you have a dark desktop background. Here it is superimposed on a dark gray. Enjoy!
More Fluid Tastiness
Welp, I finally upgraded to Leopard today. And you know what that means… Fluid! Now that I can run standalone GitHub, I thought it would be fun to play with the provided JS API.
First up, your unread message count. We don’t have any polling stuff (yet), but it’ll update on every page load:
Also, if you hold down the GitHub icon there are some quick links available:
That’s it for now. I’m sure there will be more as both Fluid and GitHub grow. I’d love to figure out a way to add some useful Growl stuff.
Update: Want to try out the Thumbnail plugin on commits? Go to Preferences and click “Thumbnail,” then add these two rules:
http://github.com/*commits* .human .message pre a https://github.com/* .commit .message a
This’ll give you hot coverflow action for commits on your dashboard and any commit log page.
Repository Admin Tab
Repository collaborator permissions are coming very soon. You’ll be able to give someone read, write, or admin access to your repository. To prepare for that, we’ve added an “Admin” tab to each repository and started splitting up the massive ‘edit repository’ page into sub-tabs.
Fear not, your Twitter hook didn’t disappear. It just has its own tab now.
Commit Comments
In the past, maybe 100 years ago, I worked at a company where the diff of each commit was emailed to the developers. If anyone had a comment or question, they’d “reply-all” and top-post their remark. Efficient, but oh so messy. Especially as the threads grew.
Enter: commit comments. We saw the Django Book and instantly knew this was the best (and coolest) solution.
Leave a comment at the bottom of any commit, or on a single line. Up to you. Comments show up in your feed and each repository has its own comment feed.
On the commits log or the source browser, commits that have been commented on will be marked with a comment bubble.
Try it on the Facebox commit and have fun.
Service Integration
We heard you loud and clear that you wanted to integrate GitHub with your existing services without having to setup a custom post-receive service. Now, when you go to your repository’s edit screen, you’ll see the following:
We knocked out the first two services that we’re most familiar with, Lighthouse and Campfire, but expect to see more coming very soon. Feel free to request a service (or +1 the ticket if your service is already listed) so we know which are the most help to you guys.
We Launched
GitHub is officially live. Thanks for the awesome beta everyone.
While you can sign up or upgrade your account now, it’ll be one week (April 17th) before we start enforcing limits. Think of this as a trial period.
We’re really proud of the site and have so many ideas for the future – this is just the beginning. While we’ve come a long way since going into beta, rather than pontificate on the journey I’ll just let our happy users speak for themselves.
Update: Oh yeah, new features: comments on commits, network graphs (check the blog post), and Campfire & Lighthouse integration.
Say hello to the Network Graph Visualizer
Our goal here at GitHub is to break down the barriers that normally impede collaboration. One of the biggest challenges that we face as developers is keeping track of what other contributors have done. I’ve spent the last month working on GitHub’s answer to that problem and so we’re very pleased to announce the interactive GitHub Network Graph Visualizer!
Above you’ll see a screenshot of the network graph of my god repository (click it for the real deal). On the left hand side is a list of GitHub users. Across from each user is drawn a graph of commits. Since I’ve asked for the graph to be drawn with me (mojombo) as the root, every commit on every branch that I currently have in my repository (mojombo/god) will be graphed across from my name. If you look at the second user in the list (Bertg), you’ll see that only commits that appear in his repository (Bertg/god) but not mine are drawn across from him. The third user (kevinclark) has commits that appear in neither my repo nor Bertg’s repo. And so on.
When you look at the graph you are seeing every commit on every branch of every repository that belongs to a network. But you are seeing each commit only once. Let that sink in for a second. I find that many coders are so used to a centralized SCM that they miss the fact that our Graph Visualizer is actually showing and connecting disparate repositories. Git makes this possible and once it hits you, it can change everything.
Think of it like this. If I draw the graph with myself as root, then the graph shows a sort of to-do list of code that I haven’t pulled into my repo yet. When I want to catch up on what the community has been doing in their forks of my repo, I can hit up the graph and see immediately what others have been up to. If I were to pull in Bertg’s changes, the next time I see the graph, Bertg will no longer be shown at all because he will no longer have any commits that I do not. Keep thinking to-do list and you’ll understand the graph.
This method of drawing the graph may seem odd at first. If both Alice and I contribute to merb-core and at some point Alice pulls my commits into her repo, then I may not be shown on the network graph at all (if the graph ordered her before me). My commits would have already been drawn in her repo. It is important to realize that the graph is about code not ego. My code may be in my repository and yours and many others. Our individual repos are simply vehicles for introducing our code to the world. If we learn to let go of our code a little bit, we are rewarded ten-fold by what the community or our coworkers will do with that code.
You can move around the graph by clicking and dragging it with your mouse. If you click in the graph, then you can use the arrow keys or vim movement keys (hjkl). Hold down the shift key while hitting left or right and you’ll go to the beginning/end of the graph. Press t to show/hide the tag markers. Hover over a commit for details about it. Click on a commit to be taken to that commit in a new window (makes it easy to come back to the graph without losing your place). Click a username to redraw the graph with that person as the root.
Here’s a few more graphs that show some complex branching:
You can see the graph for any repo by clicking the Network tab.
GitHub on Fluid
Want to use GitHub with Fluid? We got you covered. Here’s a massive octocat for superb dock action.
New to Git? Cheat!
Learning Git is not the easiest thing in the world. There are a ton of commands, many of which have multiple personalities. What’s an aspiring hacker to do? The same thing we always do: Cheat!
The Git cheat sheet is packed with great information, and editable to boot!
If you’re a Ruby user, or have RubyGems, you can install the “cheat” gem with gem install cheat
. After it completes, type cheat git
any time to have the cheat sheet delivered right to your terminal. Have at.
Back to Subversion
Update, April 1st, 2010: While this post was originally made in jest, head over to Announcing SVN Support to see that it’s now reality.
You may have noticed things have slowed down around here. Sure, the site’s getting faster, but where are the new features? Well, it’s time to unveil what we’ve been secretly working on these past few weeks: SVNHub.
Yes, that’s right! Git is too new, too big of a change, and too hard to explain to my parents. We’re moving back to Subversion and all of you are coming with us.
Easily Install the FF GitHub Search
Thanks to @VxJasonxV you can now install the GitHub Firefox easy-search from any page on our site:
Search away.
Search GitHub in Firefox
Do you feel a sense of longing, even loss, when away from GitHub? Ian Ownbey provides some help: a Firefox search plugin for GitHub.
Never be more than a few keystrokes away from your favorite site again!
Super Awesome Search
We just rolled out our new and improved search. It’s way better. Try out this search for git to see what I mean.
It searches across repository names, descriptions, and owner names. Try searching for josh to find all his repositories. You can also use the standard attribute:value syntax to narrow your search. Like this search for sake owner:defunkt.
Enjoy.
Check Your Usage
Hey, wondering how much disk space you’re using? Check your account page to find out. Usage is updated every time you push.
As for me, I’ve got around 30 repositories (including GitHub and FamSpam) but am only using 38 megs. Man, I love git.
Git Support for Rails Plugins
Installing a Rails plugin from GitHub is now as simple as:
./script/plugin install git://github.com/pjhyett/auto_migrations.git
Sweet! Thanks to all involved for making it happen, the changeset is here.
Now, to figure out gem support…