Getting started with GitHub Enterprise

Here, you’ll find everything you need to know about using GitHub Enterprise—from improving software development practices to ensuring a smooth rollout for everyone in your organization. Let’s get started.

In this guide

  • Install and start using GitHub Enterprise—on-premises Enterprise Server, Enterprise Cloud, or both

  • Set and achieve onboarding goals for your team’s first 30 days to three months

  • Work through (and prepare for) common first-time user challenges

Pro tips

  • To help everyone quickly adopt GitHub Enterprise, identify a group of “GitHub champions” across your organization who will encourage other team members to get started right away. The faster your team uses GitHub, the faster you can ship.

  • Check out the GitHub Glossary for more about Git and GitHub-specific terms we use across our sites and documentation.

Part one: Installing GitHub

Correct installation and set up are the first steps towards making sure your organization can use GitHub effectively. We’ll walk through the installation basics, plus how to verify your account(s), configure your security settings, and get your teams ready to build.

Setting up GitHub Enterprise

To get started with GitHub Enterprise Server, you’ll need to install your organization’s instance on a virtualization platform of your choice. Using Enterprise Cloud? Log in to your Enterprise Cloud organization on GitHub.com, then jump down to step seven.

Read more about provisioning and installation.

Using the Management Console

The Management Console will help you with day-to-day administrative tasks. Use the Management Console to guide you through initial setup, configure settings for your instance, schedule maintenance, and more.

Read more about web-based management console.

Authenticating users for your GitHub Enterprise instance

Choose your authentication method: Enterprise Server’s built-in authentication or pre-existing LDAP, SAML, or CAS. Not sure which method is right for your team? You’ll be able to switch at any time.

Read more about authenticating users for your GitHub Enterprise instance.

Configuring for high availability

Give yourself maximum potential uptime. Configuring your Enterprise Server instance for high availability makes sure that any hardware failures or major network outages don't disrupt service.

Read more about high availability configuration.

Designating backups and disaster recovery

As an extra layer of protection, set up GitHub Enterprise Server Backup Utilities. You’ll be able to backup your Enterprise Server instance on a Linux or Unix host system—ideally in a different geographical location.

Read more about backups and disaster recovery.

Using geo-replication

If your organization has offices in multiple locations, geo-replication on GitHub Enterprise Server can help reduce latency between different hosts and locations—getting your teams the data they need, quickly. To use geo-replication, you’ll also need to use geolocation-aware DNS.

Read more about geo-replication.

Confirming your Git and GitHub accounts

Depending on whether you’re using Enterprise Server or Enterprise Cloud, go ahead and sign in and verify your primary email address, or configure your instance to send email notifications on issue, pull request, and commit comments.

Read more about Git and GitHub setup.

Connecting GitHub with SSH

You can use GitHub without having to supply your username and password each time. Use the SSH protocol to add a new SSH key to your GitHub account and configure an authentication agent.

Read more about connecting to GitHub with SSH.

Part two: Managing your team

Working together helps teams build and ship better software, faster. But successful collaboration relies on a few important factors: communication, contribution, and administration. GitHub Enterprise gives you the tools to manage them all in the way that works best for your organization.

Organizing people for successful collaboration

Your GitHub hierarchy is made up of individual users, organizations, and teams. Each play a role in how your developers collaborate and communicate on GitHub.

Start by grouping individual users within your organization into GitHub teams. Not sure where to begin? Create teams that reflect your current organizational structure or working groups. Then decide which GitHub repositories your teams will have access to. Repositories are where your teams will perform code reviews, give feedback on each other’s progress, and discuss ongoing work.

We know that teams change roles and take on new projects all the time. You can create new teams and manage repository permissions whenever you need to.

Read more about teams and repositories.

Gaining team insights

Team insights help you understand what’s happening within your organization and why. On Enterprise Server or Enterprise Cloud, you can see a summary of all repository activity through Pulse using the Insights tab. Pulse shows how often your teams are closing issues, merging pull requests, and completing work—making it easy to identify patterns (or potential problems) in your workflow.

If you’re using Enterprise Server, you can also check out your Activity dashboard to see weekly, monthly, and yearly graphs on the number of new pull requests, merged pull requests, new issues, closed issues, and more.

Read more about the activity dashboard.

Getting to know admin tools

Using multiple GitHub products? Oversee all of your GitHub accounts with unified business identity, a feature of GitHub Connect. In a single interface, admins can manage overall billing, licensing, permissions, and enforce business policies—whether your organization deploys on your own server or the cloud.

You’ll find unified business identity under your account’s organization settings. Here, you can also manage user access, authentication, and other organization details.

Read more about business policy enforcement and role-based permissions.

Finding support and training help

Onboarding a new software platform is exciting—and we want you to be able to start building together from day one. Have a question that isn’t answered here? Get in touch with the GitHub Support Team. Depending on your GitHub plan, you can also contact Premium Support for on-demand help outside of typical business hours.

Read more about Enterprise Support and Premium Support.

Looking for additional training? The GitHub Professional Services Team can connect you with the skills your organization needs to work smarter. And if you’re looking for employee education at scale, our friendly GitHub Learning Lab bot helps developers learn and apply new skills through short, hands-on projects.

Read more about Professional Services and Learning Lab for Organizations.

Part three: Building securely

Security is a team effort, from the first line of code to shipping a new application. You can easily customize your GitHub Enterprise instance to fit your organization’s compliance standards—without compromising innovation. Set your team up to build security-first with unique permission levels, audit logs, built-in features, and more.

Setting up secure workflows

After you invite your team to collaborate as an organization, it’s time to decide who will own and help manage your organization’s account. Set permission levels for your organization based on administrative access, billing needs, and the different GitHubs Apps you plan to use. You can also add temporary employees as outside collaborators.

Read more about permission levels for your organization and repositories owned by user accounts.

Next, protect your work. Use protected branches to ensure that no one can make irrevocable changes to a repository—meaning they won’t be able to merge branches or pull requests without passing certain security checks. These checks include required status checks, which all code must pass before it can be merged into a protected branch. You can set up branch protections, required status checks, and branch restrictions in your organization’s settings.

Read more about protected branchesrequired status checks, and branch restrictions.

Staying in compliance

Required status checks can also help your team stick to and enforce your organization’s compliance standards. Use these checks and others to automate your compliance workflows, verify commits before they’re accepted, and make sure your team builds using repeatable, trackable processes. Your organization’s audit log makes it easy to review your team’s work, too. Find out who performed an action, what the action was, and when it was performed.

Read more about reviewing the audit log for your organizationcommit verifications, and pre-receive hooks.

Using Enterprise Cloud? GitHub has SOC for Service Organizations reports, and Enterprise Cloud is compliant with AICPA Service Organization Controls (SOC) 2 Type 1 and SOC 1 Type 1. Enterprise Cloud is also authorized via the FedRAMP Tailored baseline of security controls.

Read more about SOC reports and FedRAMP authorization.

Using secure development features

Build securely with GitHub’s built-in secure development features, like security alerts for vulnerabilities, token scanning, and the GitHub Security Advisory API. Get notified if any of your projects have a dependency with a known vulnerability, including suggested fixes from the GitHub community. Token scanning also ensures that your tokens and keys are never accidentally committed and exposed in a public repository, while the GitHub Security Advisory API integrates the latest GitHub security updates into your own projects.

Read more about security alerts for vulnerabilitiestoken scanning, and the Security Advisory API.

Part four: Working together

With GitHub Enterprise, your team can work together on projects from anywhere. Features like issues, branches, commits, and pull requests make it possible to discuss and review code—no matter where you are. Plus, you can manage projects and releases right inside GitHub, without using outside project management tools.

Understanding the GitHub Flow

The GitHub Flow is a lightweight, branch-based workflow that helps you make changes and deploy code quickly. Using branches, commits, and pull requests, you can suggest changes to your code, ask for feedback, leave comments, and review changes before they’re accepted. Think something needs a second look? Tag your team account or individual users anytime, and they’ll get an instant notification.

Read more about the GitHub Flowmentioning users and teams, and code review.

Reviewing and discussing work

Along with branches, commits, and pull requests, issues also help you track and manage work on GitHub. Create a new issue, pin important issues to the top of your projects, or collaborate using issues that have already been opened by your team. Issues (and pull requests) add up fast, so be sure to use unique labels to categorize and prioritize your work.

Read more about issues and adding labels to issues and pull requests.

Planning and tracking work

Project managers and developers can coordinate, track, and update their work—all in the same place. Create project boards on GitHub with associated issues, pull requests, and notes, then use milestones to track your progress toward team goals. Once your project is ready for the world to see, package up your software, release notes, and links to binary files in a single release.

Read more about project boardsmilestones, and releases.

Part five: Integrating with GitHub

Chances are, your team already knows and loves GitHub, but there are other tools we know you rely on to build every day too. Whether you’re integrating legacy solutions or discovering new applications in GitHub Marketplace, it’s easy to find and connect with the tools your teams need to build at their best.

Automating with GitHub Actions

Can’t find the tool your team needs for a certain task? You don’t have to build your own app. Instead, use GitHub Actions: automated workflows that run on the GitHub platform. Actions are triggered by specific events, like a push, issue, or release. Once you've created an action, you can even make it available in GitHub Marketplace for others to use.

Read more about GitHub Actions and start creating your first Action.

Integrating apps with GitHub

GitHub integrates with over 1,000 third-party applications, including top industry tools like CircleCI, Jenkins, Jira, and ZenHub. Build with the tools your team already relies on, or discover something new without setting up multiple accounts or payment methods. Install apps in seconds on an organization or user account, then give them access to the repositories of your choice.

Read more about tools that integrate with GitHub and pre-built integrations.

Using the GitHub API

Create your own tools using the same API that we use to build GitHub. Set up your individual GitHub App with built-in webhooks, run checks against code changes, and develop all kinds of integrations using the full suite of GitHub APIs.

Read more about GitHub Apps, the GraphQL APIChecks APIDeployments API, and webhooks.

Part six: Contributing to open source

Open source software is everywhere. It powers more than 50 percent of all software today, including the applications and languages your teams already use. And getting involved in open source is easier than ever: your GitHub Enterprise instance automatically connects your team with innovative open source projects and top talent on GitHub.com. Learn how to find and use open source code, share projects with the world, and get the most that the GitHub open source community has to offer—all behind the safety of your firewall.

Contributing to open source

Organizations of all sizes are contributing to open source. Whether you’re using Enterprise Server or Enterprise Cloud, you can search for code, issues, and more from millions of open source projects alongside your private projects using GitHub Connect and unified search.

Read more about unified searchopen source guides, and open source organizations.

Connecting with the GitHub community

Over 30 million developers use GitHub—but it’s easy to find your place and stay connected. Use GitHub Explore as your guide to finding your next project, catching up with what's trending, and checking out what’s new in the GitHub community.

Learn more about GitHub Explore.

Managing users

Your GitHub experience is just that: yours. Add an avatar and share your personal interests on your user profile to connect with other like-minded people on GitHub. Your teams at work can share their projects with the rest of the GitHub community too. Unified contributions, another GitHub Connect feature, allows developers to connect their open source and Enterprise profiles. With unified contributions, your team can share public and private projects they’ve worked on and get the recognition they deserve.

Read more about user profilesunified contributions, and contribution graphs.

Part seven: Getting support

Congrats, you’re officially ready to start building on GitHub! 🎉 Before you kick off your first project, check out our top tools and resources for updates, support, and some extra inspiration. Have questions or need help? Here are all the places you can find us.

Staying connected with GitHub

Looking for the latest GitHub releases or want to know what’s happening in the GitHub universe? Find out what’s new on the general GitHub Blog or GitHub Engineering Blog, as well as our social media channels. For helpful tools and tricks on using GitHub at work, we’ve put together free ebooks, webinars, checklists, and more on the GitHub Resources hub.

Check out the GitHub BlogGitHub ChangelogGitHub Engineering BlogGitHub Resources, and find GitHub on Twitter and YouTube.

Educating your team with GitHub Learning Lab

Teach your team how to use GitHub—without leaving the platform. GitHub Learning Lab helps your developers level up their skills with the help of our friendly Learning Lab bot. Build customized, private courses, improve productivity, and give everyone on your team the tools they need to build better software.

Read more about Learning Lab.

Getting help and technical training from GitHub experts

Need more hands-on training? Our Professional Services Team offers both engineering consultations and in-person classes taught by GitHub experts. We’ll guide you through every stage of your organization’s GitHub journey, from initial setup to using the GitHub API.

Read more about Professional Services.

Using the GitHub Enterprise Support portal

Search for documentation or open a support ticket with our technical engineers anytime. Depending on whether you use Enterprise Server or Enterprise Cloud, you can open a support ticket through either the GitHub Enterprise Server Management Console or the Enterprise Support portal.

Read more about GitHub Enterprise Support.

Not already using GitHub Enterprise?

Start a free trialSchedule a demo