Improving the GitHub workflow for the Microsoft Community

At Microsoft Build 2015, we announced deep GitHub integration in Visual Studio 2015, along with GitHub Enterprise 2.2.0. This release will help developers who work with the Microsoft stack make GitHub Enterprise a seamless part of their existing workflow. If you'd prefer to skip the summary, you can see a full list of new features in the release notes. If you're interested in the highlights, read on.

GitHub Enterprise now supported on Hyper-V and available on Microsoft Azure

It's important to be able to deploy and run GitHub Enterprise wherever you want. If your team works on the Microsoft stack, we have great news. With the 2.2.0 release, you can now host GitHub Enterprise in the Windows ecosystem using Hyper-V for local hosting or Azure for cloud hosting.

Powerful Collaboration - GitHub Enterprise

To request a 45-day trial of GitHub Enterprise on Azure just let us know.

GitHub Extension for Visual Studio

The new GitHub Extension for Visual Studio lets you work on GitHub repositories within Visual Studio 2015. Once you download the latest version of Visual Studio, you can log in to GitHub, clone and create repositories, and publish your local work without leaving your IDE. To see a walkthrough of the features, check out this video on Microsoft's Channel 9.

vs-clone

Microsoft Developer Assistant

In case you missed it, Microsoft also announced the availability of the Microsoft Developer Assistant for Visual Studio 2015—a way for developers to search for code on GitHub.com from Visual Studio. Just enter your query and you will see links to public code on GitHub.com, along with information about the project.

Wait, there’s more!

Beyond the Microsoft integration you’ll find lots more to like in Enterprise 2.2.0 including:

  • PDF rendering
  • Mobile web notifications
  • Quick pull requests
  • Xen hypervisor support

For a full list of what’s new, check out the release notes.

If you already use GitHub Enterprise, you can download the latest release from enterprise.github.com.

If you are attending Build 2015 and want to learn more, visit the GitHub booth on the third floor.

Announcing Git Large File Storage (LFS)

Distributed version control systems like Git have enabled new and powerful workflows, but they haven't always been practical for versioning large files. We're excited to announce Git Large File Storage (LFS) as an improved way to integrate large binary files such as audio samples, datasets, graphics, and videos into your Git workflow.

Git LFS is a new, open source extension that replaces large files with text pointers inside Git, while storing the file contents on a remote server like GitHub.com or GitHub Enterprise.

graphic

Git LFS is easy to download and configure, works on all major platforms, and is open sourced under the MIT license.

Early access to Git LFS support on GitHub.com

We're ready to roll out Git LFS support to a select group of users. If you'd like to be one of the first to try it out on GitHub.com, sign up for early access using your GitHub account.

In the future, every repository on GitHub.com will support Git LFS by default.

Pricing

Every user and organization on GitHub.com with Git LFS enabled will begin with 1 GB of free file storage and a monthly bandwidth quota of 1 GB. If your workflow requires higher quotas, you can easily purchase more storage and bandwidth for your account.

Want to start working with large files on GitHub.com? Sign up for early access.

Navigate branches from your phone

Branches are an essential part of collaborating using GitHub Flow. And it's now easier than ever to browse a repository's branches on your phone.

Using the new dropdown, you can access the recently active branches for a project or browse through all of its branches.

mobile-branches

Introducing mobile web notifications

Web notifications on GitHub keep you apprised of the latest activity from the repositories you watch within your browser. With the addition of mobile web notifications, now you can stay up to date from your phone.

If you already use web notifications, you'll see a familiar indicator in the top right of every page whenever you have unread activity.

Mobile notifications

Use the switcher at the top of the page to filter your notifications. By default we show all your unread activity across the repositories you watch, but filtering to a specific repository—or even just the threads you're participating in—is just a couple taps away.

Switch contexts

When you want to skip a notification, you can always mark it as read. Tap the checkmark on the right of individual notifications and they're immediately updated. You can also use the link in each repository group's header to mark multiple notifications as read.

New to web or email notifications on GitHub? Head to your account settings to customize how and where you receive notifications for the repositories you watch.

PDF Viewing

We've been displaying 3D, map, and tabular files for a while now. We're now happy to add PDF documents to the list!

PDF being rendered

Simply browse to a PDF document and we'll render it in your browser like any other file. From presentations to papers, we've got you covered. Many thanks to Mozilla and every contributor to PDF.js. If you have any further questions, check out the help article.

Create Pull Requests in GitHub for Windows

Just like our Mac client, you can now use GitHub for Windows to submit pull requests to GitHub or GitHub Enterprise, right from your desktop.

Create a pull request

We didn't forget forks, either! If you fork a repository and then want to contribute changes to the upstream repository, GitHub for Windows will keep track of upstream branches. This means less hassle when you're ready to contribute your changes back.

Upstream branches

Download GitHub for Windows and start sending pull requests now!

The new face of committing in GitHub for Mac

We’ve just redesigned GitHub for Mac’s Changes tab to make it even easier to review lots of changes, and to see what will be shared before clicking Sync:

A long list of changes in GitHub for Mac

A long list of unsynced commits in GitHub for Mac

This means that you can focus solely on what’s most important to you: your changes.

We’ve also simplified and improved the process for fixing up a commit you’ve just made. Just click the “Undo” button in the pane that appears:

Recent commit pane with Undo button

And if you don’t want to worry about manually syncing your changes after committing, you can enable “Automatically Sync after Committing” from the Edit menu:

Automatically Sync after Committing in the Edit menu

This is yet another step toward our grand vision for GitHub for Mac, with plenty more to come, so give it a shot! If you already have GitHub for Mac installed, it will update itself to the latest version automatically.

As always, we’d love to know what you think. If you have any comments, questions or bug reports, please let us know.

Organization-approved applications

Applications integrate with GitHub to help you and your team build, test, and deploy software. But not all apps are created equal. By adopting a list of approved applications, organization admins can better manage which apps can be given access to their organization's data.

Approve trusted applications

If you're administering an organization on GitHub.com, you can set up a whitelist of trusted third-party applications.

organization-approved-applications

With this protection in place, all applications need your explicit approval before they can access your organization's resources. You can grant access to your favorite continuous integration service (for example), while ignoring other applications that you may not trust or need.

Request your favorite tools

If you're a member of an organization and have a third-party application that you want to use, simply ask your organization's admins to approve access. They can then review the requested application to decide whether it should have access to your organization's data.

request-organization-approval-for-an-app

For more information on setting up a list of approved applications for your organization, be sure to check out the docs.

If you develop an app that integrates with GitHub, check out the Developer Blog for our latest recommendations on working with organizations and their data.

Create Pull Requests with GitHub for Mac

Pull requests are fantastic. We use them every day to review and discuss code, documentation, and designs. Now you can create pull requests without leaving the warm embrace of GitHub for Mac.

Create pull requests

We've also made forks easier to work with. Forked repositories now automatically fetch their upstream repository, and its branches can be checked out or merged. No more futzing with the command line or multiple remotes!

Check out the upstream's branch

Download GitHub for Mac and start sending pull requests!

Quick Pull Requests

Starting conversations around changes is what pull requests and GitHub Flow are all about, so we’re excited to introduce a powerful shortcut that gets you there even faster.

When using your browser to edit a file on GitHub.com, the web-based commit composer lets you quickly propose a change to a new branch and then immediately open a pull request for discussion and review:

Selecting the new branch option to open a quick pull request

Reducing the time it takes to open a pull request lowers the contribution barrier, and having this workflow available entirely within the browser makes collaboration more approachable for people with all technical skill levels.

To learn how GitHub Flow works, and whether it might be a good workflow to use on your projects, check out our guide on Understanding GitHub Flow.

Partial commits in GitHub for Windows

Ever found yourself in a situation where your working directory contains a mix of changes that don't quite fit together? It would be easy to commit it all at once and move on; however, small, focused commits are great for making it easy to review and discuss a branch of work - especially when working on a complex codebase.

But how can you choose which changes to use in a commit?

The newest release of GitHub for Windows supports selecting lines or blocks of changes when creating a commit. Simply click the desired lines in the gutter, create the commit, and leave the other changes for you to continue working on.

Create a partial commit

For people familiar with the command line, this change is similar to interactive staging using git add -i or git add -p.

Mobile Search

Whether you're reviewing project issues from your phone while traveling for business, or trying to find a specific Node.js repository to show a friend at lunch, we want the GitHub.com mobile experience to serve you well.

That's why we've enabled search on mobile devices, making it easier for you to find repositories, developers, and issues all from the palm of your hand using GitHub's powerful search syntax.

mobile-search

Happy searching!

Syntax Highlighted Diffs

Unified and split diffs now feature syntax highlighting, which adds colors to your code to make its meaning and structure clearer. Now you can more easily understand the code that was changed in a commit, pull request, or review comment.

A diff with and without syntax highlighting

See it in action at dotnet/corefx or your favorite repository.

See results from all pull request status checks

Since we introduced the Status API, you've been able to improve the quality of your code by including the status of a pull request within the conversation timeline, for every push. Before today, you've only been able to see results from one service. Now you can see all your results at once, from multiple CI systems that test your code against different platforms to simultaneous security testing and code coverage analysis.

screenshot of status area with a few statuses

You can also see how the status of a pull request has changed over its history by clicking the icons listed next to individual commits.

screenshot of a commit with multiple statuses

If you're interested in how to set up your own statuses, take a look at our Status API docs along with this guide to building your own CI service. You can also check out some the services that use the Status API to help you keep your code clean, confirm your tests are passing, and make sure contributors have agreed to your CLA.

Introducing organization webhooks

Webhooks are now available at the organization level on GitHub.com. Organization webhooks send events for all repositories in an organization. They also include new events for repository creation, team membership, and more.

org hooks

If you're extending GitHub into your internal systems, organization webhooks save you time by helping you configure integrations across multiple repositories in one place. The addition of organizational-level events, like team membership, open up new possibilties for integrators building applications that work with GitHub.

For all the details, check out our updated webhook developer guide.