This is the first post in a multi-part series on using GitHub for Government. We’ll discuss what the public can see and do with GitHub, what Drupal code should and shouldn’t be in a public repository, users and permissions on organizational accounts, and developer workflows.
Scenario
Your government agency is new to Drupal or open source. Someone you respect suggests creating an account on GitHub.com. But you don’t really understand what GitHub is. You want to know why you need it, what you should do with it, what new communications channels it opens up, and how to steer clear of landmines. You don’t want unapproved spokespeople communicating with the public on your agency’s behalf, or putting out any sort of communications that could embarrass or confuse anyone. And you don’t want to get into anything without understanding all the security and cost implications.
If this scenario sounds familiar to you, I’ve written overviews and recommendations for people like you before. I have repackaged these writings into a series of short blog posts here. I hope you find them useful.
Overview
GitHub is a user friendly website that helps people and organizations share code and collaborate on projects, like a social network oriented around code. The site's main feature is hosted Git code repositories, like a "track changes" feature for software projects. This lets developers fully understand changes in code over time and improves their ability to make use of released code. Organizations hosting code on GitHub can make their projects public or private. When releasing software to the public, a repository must be made public for others to view, download, copy, and comment on the project’s code and history of changes.
Contents
The blog posts that follow in this series include a GitHub crash course for non-technical audiences, screenshots so you don’t have to go hunting to see what these things look like, and recommendations for getting started. Blog posts in this series will include:
- What can the public see and do with things I put on GitHub?
- What Drupal code should (not) be included in a public repo?
- Users and permissions on organizational accounts
- Developer workflows
Stay tuned for our next post on GitHub for Government, where we’ll discuss what the public can see and do with the things you put on GitHub.