The GitHub Blog Icon

The GitHub Blog

The epicenter of open source and one of the most popular software development platform for open source and businesses.
github.blog • 23 Stories
All Sources

The GitHub Blog Icon The GitHub Blog

GitHub officially says farewell to Atom

GitHub will archive all projects under the Atom org on December 15, 2022. Why?

Atom has not had significant feature development for the past several years, though we’ve conducted maintenance and security updates during this period to ensure we’re being good stewards of the project and product. As new cloud-based tools have emerged and evolved over the years, Atom community involvement has declined significantly. As a result, we’ve decided to sunset Atom so we can focus on enhancing the developer experience in the cloud with GitHub Codespaces.

Atom was co-founder and long-time CEO Chris Wanstrath’s baby. We first heard its story from project lead Nathan Sobo on The Changelog back in 2017. Here’s what he had to say about the end of Atom’s era:

As Atom’s sun sets, Zed’s sun is rising. We’re not done here.

The GitHub Blog Icon The GitHub Blog

GitHub will require 2FA by the end of 2023

Mike Hanley on GitHub’s blog:

The software supply chain starts with the developer. Developer accounts are frequent targets for social engineering and account takeover, and protecting developers from these types of attacks is the first and most critical step toward securing the supply chain…

Today, as part of a platform-wide effort to secure the software ecosystem through improving account security, we’re announcing that GitHub will require all users who contribute code on GitHub.com to enable one or more forms of two-factor authentication (2FA) by the end of 2023.

This is a big step in the right direction and their new(ish) 2FA for GitHub Mobile feature helps make the burden not as cumbersome as it might be otherwise.

The GitHub Blog Icon The GitHub Blog

Scripts to rule them all

From Jon Maddox on The GitHub blog (from waaay back in the day):

At GitHub, we have normalized on a set of script names for all of our projects that individual contributors will be familiar with the second after they clone a project. We call them “Scripts to Rule Them All”.

Here’s a mapping of what these scripts are named and their responsibility:

  • script/bootstrap – installs/updates all dependencies
  • script/setup – sets up a project to be used for the first time
  • script/update – updates a project to run at its current version
  • script/server – starts app
  • script/test – runs tests
  • script/cibuild – invoked by continuous integration servers to run tests
  • script/console – opens a console

Each of these scripts are responsible for a unit of work. This makes them composable, easy to call from other scripts, and easy to understand.

Note: this was written basically forever ago, but it’s still a relevant and effective solution.

The GitHub Blog Icon The GitHub Blog

GitHub has a new CEO

Thomas Dohmke will be CEO of GitHub. He served as GitHub’s Chief Product Officer, and according to his LinkedIn bio — Thomas led the acquisition of GitHub at Microsoft and the acquisitions of Dependabot, Semmle, and npm.

This morning, I shared the following post with Hubbers in response to Nat’s announcement about his next adventure. I am thrilled to take on the role of CEO to build the next phase of GitHub for our global community of software developers.

Exiting as CEO, Nat Friedman shared his thanks in a post titled “Thank you, GitHub”.

This morning, I sent the following post to the GitHub team. TL;DR: I’m moving on to my next adventure, and Thomas Dohmke (currently Chief Product Officer) will be GitHub’s next CEO. I will become Chairman Emeritus, which fulfills my lifelong ambition of having a title in Latin. My heartfelt thanks to every Hubber and every developer who makes GitHub what it is, every day.

The GitHub Blog Icon The GitHub Blog

Bringing React's ideas to server-rendered Rails views

We didn’t do too much coverage of Rails 6.1 release last week, but here’s a great write-up on the GitHub blog about how they landed a couple small PRs into the framework that dramatically changed how the company is building views with ViewComponent.

This comment was particularly noteworthy, methinks:

Inspired by our experience building component-based UI with React, we set off to build a framework to bring these ideas to server-rendered Rails views.

Good ideas propagate. Regardless of what comes next in the web UI world (or React goes from here), this single idea is so profound for building frontends that it will be React’s lasting legacy.

The GitHub Blog Icon The GitHub Blog

"Set the default branch name" feature has landed on GitHub

Following Git 2.28’s highly sought after ability to configure init.defaultBranch comes GitHub’s support at the platform level.

You can now set the default branch name for newly-created repositories under your username. This setting does not impact any of your existing repositories. Existing repositories will continue to have the same default branch they have now.

But even if you do nothing…

On October 1, 2020, if you haven’t changed the default branch for new repositories for your user, organization, or enterprise, it will automatically change from master to main.

Jon Evans The GitHub Blog

GitHub Arctic Code Vault's guide to the Tech Tree

Have you heard of the GitHub Arctic Code Vault? If not, the goal of GitHub Arctic Code Vault is to preserve open source software for future generations. Which means we need thorough docs describing how the world makes and uses software. Which I find completely fascinating!

From the GitHub Archive Program readme:

We are now also opening up the initial compilation of Tech Tree resources to community input. Inspired by the Long Now Foundation’s Manual for Civilization, the Tech Tree is a collection of technical works which document and explain the layers of technology on which today’s open-source software relies, along with works included to provide additional cultural context for the Arctic Code Vault.

From the Tech Tree readme:

What follows, which we call the Tech Tree, is a selection of works intended to describe how the world makes and uses software today, as well as an overview of how computers work and the foundational technologies required to make and use computers. The purpose of the GitHub Archive Program is to preserve open source software for future generations. This implies also preserving the knowledge of other technologies on which open-source software runs, along with a depiction of the open-source movement which brought this software into being.

The GitHub Blog Icon The GitHub Blog

Git 2.28 brings `init.defaultBranch`

Leading off the updates for Git 2.28 is the highly sought after ability to configure init.defaultBranch so folks can move from master to main as their default branch name.

From Taylor Blau on the GitHub blog:

When you initialize a new Git repository from scratch with git init, Git has always created an initial first branch with the name master. In Git 2.28, a new configuration option, init.defaultBranch is being introduced to replace the hard-coded term. (For more background on this change, this statement from the Software Freedom Conservancy is an excellent place to look).

Starting in Git 2.28, git init will instead look to the value of init.defaultBranch when creating the first branch in a new repository. If that value is unset, init.defaultBranch defaults to master

Also check out github/renaming to learn more about the complementary changes GitHub is making. GitLab and Bitbucket are making similar changes.

Git 2.28 brings `init.defaultBranch`

The GitHub Blog Icon The GitHub Blog

GitHub is acquiring npm

This.. is a bit of a bombshell:

The work of the npm team over the last 10 years, and the contributions of hundreds of thousands of open source developers and maintainers, have made npm home to over 1.3 million packages with 75 billion downloads a month. Together, they’ve helped JavaScript become the largest developer ecosystem in the world. We at GitHub are honored to be part of the next chapter of npm’s story and to help npm continue to scale to meet the needs of the fast-growing JavaScript community.

Software is eating the world. Meanwhile, Microsoft is eating the software world… one acquisition at a time.

The GitHub Blog Icon The GitHub Blog

GitHub Sponsors is out of beta

Earlier this week GitHub Sponsors came out of beta to general availability for developers with bank accounts in 30 countries (and growing). Also, check out the companion video celebrating some of the developers of GitHub Sponsors. Next steps?

This is just the beginning for native sponsorships on GitHub. We’re working hard to build out great sponsorship experiences around the world.

The GitHub Blog Icon The GitHub Blog

Sponsor your favorite open source contributors directly on GitHub

HUGE news coming from GitHub today:

We’re thrilled to announce the beta of GitHub Sponsors, a new way to financially support the developers who build the open source software you use every day. Open source developers build tools for the rest of us. GitHub Sponsors is a new tool to help them succeed, too.

100% of sponsorship money goes to the developers and they’re even matching contributions up to $5k during a developer’s first year! Also, the whole thing is tightly integrated in to GitHub itself:

Open source projects can also express their funding models directly from their repositories. When .github/FUNDING.yml is added to a project’s master branch, a new “Sponsor” button will appear at the top of the repository. Clicking the button opens a natively rendered view of the funding models listed in that file.

There’s lots to digest here, but at first glance this looks like an amazing addition to the open source ecosystem. 🎉

The GitHub Blog Icon The GitHub Blog

Are you aware of the recent Git ransomware incident?

Today, Atlassian Bitbucket, GitHub, and GitLab are issuing a joint blog post in a coordinated effort to help educate and inform users of the three platforms on secure best practices relating to the recent Git ransomware incident.

So what happened?

On Thursday, May 2, the security teams of Atlassian Bitbucket, GitHub, and GitLab learned of a series of user account compromises across all three platforms. These account compromises resulted in a number of public and private repositories being held for ransom by an unknown actor. Each of the teams investigated and assessed that all account compromises were the result of unintentional user credential leakage by users or other third-parties, likely on systems external to Bitbucket, GitHub, or GitLab. The security and support teams of all three companies have taken and continue to take steps to notify, protect, and help affected users recover from these events.

The GitHub Blog Icon The GitHub Blog

GitHub launched its own package registry 😱

ICYMI — late Friday afterrnoon GitHub held a live event to announce the beta launch of GitHub Package Registry.

GitHub Package Registry is fully integrated with GitHub, so you can use the same search, browsing, and management tools to find and publish packages as you do for your repositories. You can also use the same user and team permissions to manage code and packages together. GitHub Package Registry provides fast, reliable downloads backed by GitHub’s global CDN. And it supports familiar package management tools: JavaScript (npm), Java (Maven), Ruby (RubyGems), .NET (NuGet), and Docker images, with more to come.

You can sign up for the beta here.

The GitHub Blog Icon The GitHub Blog

Top programming languages of 2018 (according to GitHub)

The state of the Octoverse has landed and with it a new dataset of top programming languages for 2018.

According to languages by contributor (as of Sept 30, 2018)… Ruby dropped from #5 to #10, Python swapped with PHP to take over the #3 spot — plus so much more…if you dig into the data.

JavaScript also tops our list for the language with the most contributors in public and private repositories. This is true for organizations of all sizes in every region of the world. However, we’ve also seen the rise of new languages on GitHub. TypeScript entered the top 10 programming languages for public, private, and open source repositories across all regions last year. And projects like DefinitelyTyped help people use common JavaScript libraries with TypeScript, encouraging its adoption.

We’ve also seen some languages decline in popularity. Ruby has dropped in rankings over the last few years. While the number of contributors coding in Ruby is still on the rise, other languages like JavaScript and Python have grown faster. New projects are less likely to be written in Ruby, especially projects owned by individual users or small organizations, and much more likely to be written in JavaScript, Java, or Python.

Here’s the visual…

Top programming languages of 2018 (according to GitHub)

The GitHub Blog Icon The GitHub Blog

Microsoft's acquisition of GitHub is now official

New GitHub CEO, Nat Friedman:

I’m thrilled to share that the Microsoft acquisition of GitHub is complete. 🎉 Monday is my first day as CEO. Millions of people rely on GitHub every day, and I am honored by the opportunity to lead this company.

He goes on to share the two principles for GitHub and these three objectives that are at the top of his mind moving forward:

  1. Ensuring GitHub is the best place to run productive communities and teams
  2. Making GitHub accessible to more developers around the world
  3. Reliability, security, and performance

The GitHub Blog Icon The GitHub Blog

Everything announced at GitHub Universe today

Today, we’re introducing future-forward features that further shape GitHub to better reflect how developers work. New to our platform, GitHub Actions and GitHub Connect advance development workflows and break down barriers between teams. We’re also releasing powerful new security tools with the GitHub Security Advisory API, new ways to learn across teams with GitHub Learning Lab for organizations, and more.

Actions stole the show (are you signed up for the beta yet?), but there’s a lot here. Stay tuned for more coverage/conversations as we have time to digest it all.

The GitHub Blog Icon The GitHub Blog

Upgrading GitHub from Rails 3.2 to 5.2

Eileen Uchitelle:

In total the project took a year and a half to upgrade from Rails 3.2 to Rails 5.2. Along the way we took time to clean up technical debt and improve the overall codebase while doing the upgrade. Below we’ll talk about how we upgraded Rails, lessons we learned and whether we’d do it again.

Congrats to Eileen and the team on this massive effort! Click through to read how they did it and the lessons the learned along the way.

Chris Wanstrath The GitHub Blog

A bright future for GitHub (at Microsoft)

The news is true. Microsoft is acquiring GitHub and is expecting the agreement to close by the end of the year.

Chris Wanstrath writes on the GitHub blog:

When GitHub first launched ten years ago, I could have never imagined this headline.

Their focus is on the long tail and the developer.

What hasn’t changed, however, is our focus on the developer. From the beginning, we have been obsessed with building a product for the people using it. We want to make developers more productive and we want more people to become developers. So as we look to the next decade of software development and beyond, we know it’s all about the developer.

The relationship that has formed between GitHub and Microsoft is years in the making.

…as we’ve gotten to know the team at Microsoft over the past few years through collaborating on projects from Git LFS to Electron, we’ve learned that they agree. Their work on open source has inspired us, the success of the Minecraft and LinkedIn acquisitions has shown us they are serious about growing new businesses well, and the growth of Azure has proven they are an innovative development platform.

Better together.

…most importantly, we both believe we can do greater things together than alone

As part of this change, Nat Friedman will be taking on the role of GitHub’s CEO. We have been searching for a new CEO for some time and found in both Microsoft and Nat a partner we believe will strengthen and grow the GitHub community and company over the next few years.

We have been in the trenches for years covering the dramatic shift of Microsoft.

Here’s a fairly comprehensive list of our coverage shared in an issue on a trending repo on GitHub. If for some reason that issue gets deleted I have archived the list here.

The GitHub Blog Icon The GitHub Blog

⚡️ Let's Encrypt strikes again, this time in your GitHub Pages

Parker Moore, on GitHub’s blog:

Today, custom domains on GitHub Pages are gaining support for HTTPS as well, meaning over a million GitHub Pages sites will be served over HTTPS.

What’s more:

We have partnered with the certificate authority Let’s Encrypt on this project. As supporters of Let’s Encrypt’s mission to make the web more secure for everyone, we’ve officially become Silver-level sponsors of the initiative.

If your custom domain uses CNAME or ALIAS records, no action is required to go HTTPS. If (like me), you have a custom domain using A records, follow along here.

Jon Rohan The GitHub Blog

Using Figma to build Octicons

Jon Rohan writes on the GitHub Blog:

To support your project’s contributors it’s important to make the contributing experience as frictionless as possible. Migrating our Octicons to Figma let us cut out painful steps in our previous workflow. Having their API available for automating the work has allowed contributors to contribute using powerful platform-agnostic design tools without any overly complex setup.

This seems to be one of the first major steps I’ve seen to use a platform-agnostic design tool like Figma, which lets you design, prototype, and gather feedback all in a browser based design tool. Couple that with a robust API and some robots to automate things as well as open up your design flow to contributors.

Using Figma to build Octicons

The GitHub Blog Icon The GitHub Blog

GitHub's technology predictions for 2018

It’s the time of year for 2017 wrap-ups and 2018 predictions. We expect these from bloggers and news sites, but this seems like an odd post coming from GitHub:

Data is on the rise, placing an even greater emphasis on security, cloud, and open source. Jason Warner, SVP of Technology, shares his predictions on the major technology trends for 2018.

I wouldn’t call too many of these predictions bold, but it’ll be interesting to see how well they hold up.

Player art
  0:00 / 0:00