Skip to content

GitHub Universe: Mission Report

unknown-1 1

Last week we launched GitHub Universe, a two-day conference where developers from all over the world convened at Pier 70 to discuss how to build, collaborate on, and deploy great software.

As we gathered in front of the main stage, the octocat appeared in full, living color in an animated short created especially for Universe by the GitHub creative team

To open Universe with a bang, our CEO and co-founder Chris Wanstrath made several announcements about new developments that will make the GitHub experience better than ever.


Partnership with Yubico:

To help users better secure their accounts, GitHub's authentication system now supports FIDO Universal 2nd Factor (U2F)—a rapidly growing open authentication standard. Yubico's U2F compliant keys are ready to protect GitHub’s millions of users and their volumes of sensitive data. Thousands of GitHub users redeemed a discount to purchase a new key. The 20% discount on YubiKeys is still available to any GitHub user while supplies last.

Integrations Directory:

It's now easier than ever to use your favorite tools with GitHub. Check out these powerful integrations, including Travis-CI and Slack, and build better software, together.

Git Large File Storage (LFS):

Git LFS replaces large files such as audio samples, videos, datasets, and graphics with text pointers inside Git, while storing the file contents on a remote server like or GitHub Enterprise. Check it out.


The general sessions from Universe are available to view on UStream. All of the talks from the Build, Collaborate and Deploy breakouts will be available to view soon, so keep your eye on Twitter.

GitHub Universe would not have been possible without the support of our 13 excellent sponsors, who provided delicious food and coffee and beautiful art installations for our enjoyment.

unknown-4 1

GitHub is how people build software. We will continue our voyage next year, so stay tuned for updates.

New in the GitHub Shop: Octopolo Shirts

Serious business deserves a serious business shirt. We've created the Octopolo Shirt to help you get down to business in the most serious manner possible. Grab yours from the GitHub Shop.

Polo Shirts

Git Large File Storage v1.0

After months of letting our early adopters kick the tires, Git Large File Storage (Git LFS) has reached a 1.0 milestone and is now available to all repositories on

Git LFS is an open source Git extension that we released in April for integrating large binary files into your Git workflow. Distributed version control systems like Git have enabled new and powerful workflows, but they haven’t always been practical for versioning large files. Git LFS solves this problem by replacing large files with text pointers inside Git, while storing the file contents on a remote server like

We’re hugely appreciative of the community that’s sprung up around Git LFS. This milestone contains features and fixes that came directly from your feedback and pull requests. Some notable changes include:

  • A fully rewritten HTTP client and API specification that improves concurrency and reduces overhead when transferring thousands of files
  • New git lfs fetch and git lfs pull commands that download objects much faster than the standard Git smudge filter
  • Options for customizing what files are automatically downloaded on checkout
    • Selectively ignore a directory of large files that you don’t need for daily work
    • Download recent files from other branches
  • Improvements to git lfs push that filter the number of commits to scan for eligible LFS objects to upload. This greatly reduces the time to push new feature branches
  • A Windows installer and Linux packages for more convenient installation
  • An experimental extension system for teams that want to customize how objects are stored on the server

Git LFS is now available to all users on, just install the client to get started.

Find and install your favorite developer tools

Our new Integrations Directory showcases a variety of developer tools that extend GitHub and your development workflow. Quickly find tools that work with GitHub to help you and your team build software together. Connect those tools to GitHub to manage all aspects of your software projects—from idea to running application in the hands of customers. Browse new integrations to customize your workflow with functionality provided by our partners.

GitHub integrates with text editors and IDEs, project management and customer support systems, CI and CD services. Developer tools that integrate with GitHub let you build sophisticated chatops workflows, allow you to deploy software directly from your GitHub repositories, and make it easy to track analytics, customer feedback, performance issues, and runtime errors back to a line of code and the context for code changes.

The Integrations Directory shows off some of our favorite tools and allows you to quickly connect them with your GitHub account. Don't see your favorite developer tool or want to get your integration listed? Let us know!


GitHub supports Universal 2nd Factor authentication

To help users better secure their accounts, we are expanding GitHub's authentication system to support FIDO Universal 2nd Factor (U2F)—a rapidly growing open authentication standard.

GitHub encourages developers to build U2F support into their own applications as well, enabling authentication with simple user experience and strong security using public key cryptography. U2F is built to protect against phishing and man-in-the-middle attacks, allowing one U2F authenticator to access any number of services without any shared secrets. Since U2F has native support in platforms and browsers, there’s no need for drivers or client software. Read more about how U2F keys work or take a look at the GitHub U2F documentation to learn how to associate a U2F key with your GitHub account.

In order to take advantage of the security improvements provided by U2F, you'll need to purchase a hardware key. You can purchase the U2F key of your choice from a range of vendors. We are partnering with Yubico, inventor of the YubiKey, co-creator of the U2F protocol, and a leading provider of U2F authenticators. Together with Yubico we are offering discounts to GitHub users for a limited time through a special offer page where you will verify your GitHub account and place your order:

  • While supplies last, GitHub users can purchase special edition U2F Security Keys for $5 plus shipping and handling (regular price $18; 5,000 special edition keys available).
  • After the special keys are gone, all GitHub users are eligible for a 20% discount on U2F-certified YubiKeys, for a limited time.
  • In addition, all students who are eligible for the Student Developer Pack will receive a 20% discount on any U2F-certified YubiKey.

We hope you'll take this step to keep your information secure.


Explore GitHub Universe


Are you at Pier 70 today for GitHub Universe? Want to earn some sweet patches to iron onto your newly acquired tote bag, and enter to win some prizes (generously provided by Twilio) while you're at it?

Complete the steps below before 3pm on Friday to earn merit badges. Each merit badge can be retrieved and ironed on to your tote at the iron-on station near the entrance upon proof of task completion.

To earn the Build badge: Introduce yourself to a stranger and tweet a photo of yourselves using #exploreuniverse.

To earn the Collaborate Badge: Head to the obliteration room – get someone to take a picture of you contributing a sticker to the chaos and share via twitter using #exploreuniverse.

To earn the Deploy badge: Tweet @twilio using #exploreuniverse: If you had unlimited time and resources to build anything with Twilio and GitHub, what would it be?

If you complete these steps, you're entered to win an iPad Mini 4, a Sphero and an Amazon gift card. Winners will be announced at 3:30pm on Day 2 of the conference on Twitter, so make sure to follow @githubuniverse.

We hope you'll join us in exploring!

Learn From the Experts at GitHub Universe


Interested in polishing your GitHub skills this week? Many GitHub Universe speakers will be offering tips, tricks, and case studies on everything from pull requests to workflow strategy. Don’t miss these educational and entertaining sessions:

  • GitHub's Brent Beer explores what makes a great pull request and how GitHub’s features unlock a strong workflow.
  • GitHub’s Matt Colyer teaches GitHub Enterprise basics, from administration to maximizing new features.
  • Look at a range of strategies for knowledge sharing, support, and practice with Peter Bell at
  • Hear from Ben Balter and the GitHub Pages team about advanced techniques that can help improve your content publishing workflow.
  • Maximize your GitHub Enterprise security system with tips about installation and collaboration from GitHub’s Matt Duff.
  • Mozilla’s Myk Melez discusses how to integrate Offline Web Apps with GitHub Pages to host static assets.

Check out the full schedule of sessions here. See you tomorrow!

New organization permissions now available

We've begun rolling out major improvements to GitHub organization permissions to all organizations on These improvements include new customizable member privileges, fine-grained team permissions, and more open communication. Over the next few days, all organization owners will be able to take advantage of the new system.

Announced a few short months ago, these improvements give your organization the flexibility to work the way you want. To recap, here are just a few highlights:

  • (Opt-in) Members can view and mention all teams, even when they're not on those teams.
  • (Opt-in) Members can create repositories without help from an owner.
  • Members can create new teams to self-organize with the people they work with.
  • Owners can give just the right amount of access to contractors and interns by adding them to repositories without giving them the privileges of organization members.
  • And many more! Learn about GitHub's improved organization permissions.

Coding together just got easier.

Hacktoberfest: Contribute to Open Source in October

Celebrate open source this October by participating in Hacktoberfest, a month long festival of code organized by DigitalOcean and hosted on GitHub.

Hacktoberfest Graphic

How to participate

Participation is simple: Choose any open source project hosted on GitHub and contribute by sending a pull request. You can fix a bug, add a feature, or even improve some documentation. Once you've made your contribution, tell the world about it by sharing with the #hacktoberfest hashtag so we can celebrate with you.

Starting tomorrow, and each day throughout the month of October, there will be an interesting open source project that is looking for contributors highlighted on the Hacktoberfest website. If you need help getting started, be sure to check out our guide to contributing to open source.

Get your t-shirt

Hacktoberfest t-shirt

Here's everything you need to do to get your free, limited edition Hacktoberfest t-shirt:

  1. Sign up on the Hacktoberfest website right away
  2. Open at least four pull requests on any GitHub-hosted open source project(s) by October 31st, 2015
  3. After the month is over, DigitalOcean will collect your shipping details and mail your shirt

Git 2.6, including flexible fsck and improved status

The open source Git project has just released Git 2.6.0. Here's our take on its most useful new features:

git fsck flexibility

If you're tired of having git fsck remind you of peccadillos from your distant past, read on. With Git 2.6, you can tell git fsck not to be quite so picky about minor data errors in your project's history.

The oddly-named1 git fsck command verifies the integrity of a Git repository, checking both that its data has not been corrupted and that its objects have the right format. You can even enable Git's transfer.fsckObjects configuration variable to make Git apply the same checks to objects that are pushed into your repository. At GitHub, for example, we enable this feature on our servers to block malformed objects from entering your project's history in the first place.

But what happens when you detect a problem in an object that is already part of your project's history? You may recall that Git objects are content-addressed and immutable. Changing an object's content, even to fix a syntactic error, changes its SHA-1 hash. And any commits which build on that object will need to update their references to it, changing their SHA-1 hashes, and so on.

Therefore, fixing a broken object requires all subsequent history to be rewritten. Sometimes it is worth doing. But sometimes, for mild forms of corruption in a repository that has already been cloned by many users, the repair process can be more trouble than it's worth. Accepting the objects as they are can sometimes be the least bad solution. But until now, that meant turning off these fsck checks entirely, losing all of the extra protection.

But now With Git v2.6, there is a better option. You can now adjust the severity of particular fsck warnings, or even tell fsck to ignore warnings entirely for a particular object. To demonstrate, let's create two commit objects with broken email addresses:

$ git cat-file commit HEAD | sed 's/</<</' | git hash-object --stdin -w -t commit
$ git cat-file commit HEAD^ | sed 's/</<</' | git hash-object --stdin -w -t commit

git fsck rightly complains about the broken objects:

$ git fsck
error in commit 2fae34b45b7202796fbe07fdb73d47ba94af1878: badEmail: invalid author/committer line - bad email
error in commit b4a1fc6eed23c19fd5eed3f17d50b2a155d56aa9: badEmail: invalid author/committer line - bad email
Checking object directories: 100% (256/256), done.

If your history is riddled with invalid email addresses, you might decide to tell git fsck to ignore this type of corruption in the whole repository:

$ git config fsck.badEmail ignore
$ git fsck
Checking object directories: 100% (256/256), done.

On the other hand, perhaps you only want to tolerate the existing broken objects, but you still want git fsck to complain if any new ones enter your repository. If so, you can tell fsck "don't give these objects any trouble; they're with me."

$ git config fsck.skiplist "$PWD/.git/skiplist"
$ echo 2fae34b45b7202796fbe07fdb73d47ba94af1878 >>.git/skiplist
$ echo b4a1fc6eed23c19fd5eed3f17d50b2a155d56aa9 >>.git/skiplist
$ git fsck
Checking object directories: 100% (256/256), done.

Since Git objects are immutable, you know that the objects you have vouched for cannot develop new problems—unless of course the object's data gets corrupted on disk, in which case fsck will complain anyway, regardless of the skiplist.

git status more informative during interactive rebase

If you've ever used Git's interactive rebase on a large series of commits, you know that it's easy to get confused about where you are. The git status command used to report that you are rebasing, but not much more:

$ git status
rebase in progress; onto 1e7a542
You are currently editing a commit while rebasing branch 'master' on '1e7a542'.

nothing to commit, working directory clean

But as of v2.6, git status gives much more context about your progress through the rebase:

$ git status
interactive rebase in progress; onto 1e7a542
Last commands done (5 commands done):
   pick da6bc48 commit four
   edit 12ee9f3 commit five
Next commands to do (5 remaining commands):
   pick 8262b99 commit six
   squash 0f9e8ec commit seven
You are currently editing a commit while rebasing branch 'master' on '1e7a542'.

nothing to commit, working directory clean

log --date can use custom formats

Git's --date option (and the matching configuration variable) let you format commit dates in a variety of standard formats, including rfc2822 and iso8601. But until now, you couldn't invent your own formats. As of v2.6, Git supports the same formatting language as your system's strftime(3) function. This lets you do silly things:

$ git log --date=format:"On the %d day of %B, my true git gave to me..."
commit bee53d49e0899e697f72ea3cee87427f319f5707
Author: Jeff King <>
Date:   On the 05 day of April, my true git gave to me...

    ...a commit message in a pear tree.

But it also lets you take advantage of your system's localized date code. For example, %c shows the time in your preferred local format:

$ git config "format:%c"
$ export LANG=es_ES.UTF-8
$ git log
commit bee53d49e0899e697f72ea3cee87427f319f5707
Author: Jeff King <>
Date:   dom 05 abr 2015 13:02:03 GMT

    ...a commit message in a pear tree

git log --cc now shows diffs by default

The --cc option (e.g., to git log) modifies the way Git displays the diffs for merge commits. But until now it did not actually tell Git to show the diff. Now --cc implies -p, so that you don't have to specify the latter option separately.

The rest of the iceberg

That's just a peek at the improvements in Git v2.6. For the full list of changes, check out the release notes.

This Git release has 665 commits from 67 contributors. We'd especially like to shout out to Junio C Hamano, who recently celebrated his 10th year as Git's maintainer. Thanks, everybody!

[1] The name isn't so odd if you know the history. Unix systems have long had an fsck command, which does a File System ChecK. The original idea of git was to act as a content-addressable filesystem for versioned data. Thus, its checking tool was naturally named git-fsck.

GitHub Universe: Prepare for Launch

With the first ever GitHub Universe only a few short days away, we wanted to give you an overview of some of the cool stuff we have planned that you might have missed, and to make sure you’re prepared.



  • There will be no parking at Pier 70, so if you drive you will need to find parking in the Dogpatch nearby.
  • If you choose to take Public transit, take the Muni T-line and exit at 3rd St & 20th St. Follow signs to the entrance.
  • Bike valet will be available for cyclists as you approach the venue.
  • Have your Uber driver enter the code UNIVERSE2015 in the “destination” field on your Uber app to take you directly to the front entrance of Pier 70 (420 22nd Street). New users of Uber will get $20 off transportation with this code!

The Main Event

  • Pier 70 is a raw, industrial space. We recommend wearing closed toed shoes and bringing layers, as it might be cool in the morning and evening. It’s part of the adventure.
  • To make GitHub Universe as accessible as possible, we will be providing ASL interpretation and a nursing room on site. If you are interested in ASL interpretation for a specific session, please email and we will insure that interpretation services are available to you.
  • Universe attendees will have the opportunity to sign up for a complimentary, 30 minute consultation conducted by our very own GitHub Services team, to discuss workflows, use cases, migrations, or any other Git topics you had in mind. If you're interested in joining us, please send an email to Since we have a limited number of sessions, attendees will be scheduled on a first-come, first-served basis.
  • We have updated the Code of Conduct. Please review it here.
  • Check out Gitter's Unofficial Hitchhiker's Guide to GitHub Universe, an app designed to help you connect with other Universe attendees! Meet likeminded people and form a dinner group.


  • The after-party will take place on Thursday, October 1 at the Village (969 Market Street), beginning at 8pm and continuing until Midnight. Mike Relm and a special guest headliner will provide musical entertainment, while CODAME Art + Tech will treat us to some trippy interactive installations. Know someone who can't attend the conference but wants to join you at the afterparty? We are opening up a few tickets to the public for this event; you can grab those here.

Follow @githubuniverse for updates and live video during the show, and use the hashtag #githubuniverse to share photos and thoughts from the conference floor.

If you haven't got your ticket yet, you'd better get it quickly. We're almost sold out!

We can’t wait to see you there :rocket:

Attach files to comments

You've been able to attach images to issues and pull request comments for awhile. Now we've expanded that feature to include:

  • Microsoft Word .docx
  • Microsoft Powerpoint .pptx
  • Microsoft Excel .xlsx
  • Text .txt
  • PDF documents .pdf

File attachments screenshot

Just drag and drop the files into the comment box and they will appear in your comment.

Embracing Open Source: GitHub Universe Speakers Tell Their Stories

featured speaker blog header

If you’re inspired by collaborative software design, be sure to check out these GitHub Universe sessions, which will explore how open source continues to change the way developers build great software.

Building Communities Around Open Source Security Software

For the past year, Facebook has been building community trust and fostering empathy through the use of an open source security tool. Christine Abernathy and Teddy Reed will be sharing their experiences around osquery and their open source communities.

Christine Abernathy is a Developer Advocate on the Open Source team at Facebook, with previous Developer Advocacy roles with Parse and Facebook Platform. Teddy Reed is a Security Engineer at Facebook developing production security tools. He is passionate about open source and collaborative engineering when scale, resiliency, and performance enable defensive and protective software design.

Open Source Principles for Internal Engineering Teams

The open source process has proven adept at producing high quality software that can be built, maintained, and adapted at scale. Join Brandon Keepers, GitHub’s Open Source Evangelist, as he examines how “inner-sourcing”—adopting open source philosophies and workflows—can improve internal engineering teams.

An engineer by trade, Brandon Keepers believes open source is a fundamental to building great products, and great products sustain healthy open source projects.

The Importance of Positive Feedback

In the tech community, positive and constructive feedback is the foundation upon which we build a safe environment to learn, teach, and improve code skills. One Medical Group’s Enrique Mogollan explores why these environments have made the Ruby community attractive for many people.

Enrique Mogollan's experience as software engineer ranges from backend and web applications to integrations and open source projects. He believes that collaborative environments are the key to promote quality code and improve software design.

Check out the full schedule of sessions here. We hope to see you next week!

Teachers, manage your courses with Classroom for GitHub

Classroom for GitHub is available now, making it easier than ever to teach with GitHub.

Classroom for GitHub screenshot

Thousands of teachers use GitHub in their courses every day. They distribute starter repositories, give feedback on pull requests, and collect assignments. In addition to helping teachers provide a better learning experience, teaching with GitHub gives students early exposure to software development best practices like version control, issue tracking, and code review.

Classroom for GitHub makes typically tedious administrative tasks (like creating repositories and managing access for large courses) simple and streamlined.

How it works

Classroom for Github automates repository creation and access control, making it easy for teachers to distribute starter code and collect assignments from students.

Assignments are the core of Classroom for GitHub. Teachers can easily create an assignment and distribute it to students using a private invitation URL. Optional starter code can be provided for individual or group work. It's even possible to delegate assignment creation and management to co-teachers and teaching assistants by adding them as organization administrators.

Get started

  1. Create an organization
  2. Request free private repositories for your classroom organization (optional)
  3. Create your first assignment with Classroom for GitHub

Open source

Classroom for GitHub is open source and we'd love to have you participate. Check out for information on how to help.

Shout out to GitHub Summer of Code student, Mark Tareshawty, from The Ohio State University for his work on Classroom for GitHub.

Thanks to our GitHub Universe Sponsors

We wanted to involve sponsoring companies in memorable ways at or our inaugural GitHub Universe conference. On October 1-2, you can expect to enjoy art installations, delicious coffee and juice, comfortable lounges and entertainment contributed by these organizations. Check them out!


The official conference after-party at the Village, featuring interactive installations by CODAME, music by Mike Relm and surprise guests, is brought to you by Huawei.

Lounges are sponsored by Heroku, Microsoft, and AWS. Make sure to thank them when you’re kicking back and enjoying some quiet time on a comfy couch.

Our installation sponsors, Travis-CI,, Target, GitKraken, and Digital Ocean will integrate visual art into your GitHub Universe experience. Look for their logos in eye-catching designs around Pier 70. As our scavenger hunt sponsor, Twilio will engage you in an interactive search for clues that unlock one-of-a-kind prizes. will keep you caffeinated with delicious Ritual coffee. Stack Overflow will provide a gorgeous custom-branded notebook so you can jot down all the pearls of wisdom delivered to you by our great roster of speakers.

Appnovation and Cisco are also supporting Universe as community sponsors.

Interested in grabbing a last minute sponsorship? Take a look at the prospectus and shoot us an email to discuss how we can partner with you to make GitHub Universe even better.

You still have a chance to grab a ticket! Get yours now before we sell out.

Something went wrong with that request. Please try again.