This guide will walk you through setting up your GitHub account and getting started with GitHub Enterprise Server's features for collaboration and community.
The first steps in starting with GitHub Enterprise Server are to access your account, set up two-factor authentication, and view your profile.
Every person who uses GitHub Enterprise Server has their own user account, which can be part of multiple organizations and teams. Your user account is your identity on your GitHub Enterprise Server instance and represents you as an individual.
The administrator of your GitHub Enterprise Server instance will notify you about how to authenticate and access your account. The process varies depending on the authentication mode they have configured for the instance.
Two-factor authentication, or 2FA, is an extra layer of security used when logging into websites or apps. We strongly urge you to configure 2FA for the safety of your account. For more information, see "About two-factor authentication."
Your GitHub profile tells people the story of your work through the repositories and gists you've pinned, the organization memberships you've chosen to publicize, the contributions you've made, and the projects you've created. For more information, see "About your profile" and "Viewing contributions on your profile."
To best use GitHub Enterprise Server, you'll need to set up Git. Git is responsible for everything GitHub-related that happens locally on your computer. To effectively collaborate on GitHub Enterprise Server, you'll write in issues and pull requests using GitHub Flavored Markdown.
GitHub's collaborative approach to development depends on publishing commits from your local repository to GitHub Enterprise Server for other people to view, fetch, and update using Git. For more information about Git, see the "Git Handbook" guide. For more information about how Git is used on GitHub Enterprise Server, see "GitHub flow."
If you plan to use Git locally on your computer, whether through the command line, an IDE or text editor, you will need to install and set up Git. For more information, see "Set up Git."
If you prefer to use a visual interface, you can download and use GitHub Desktop. GitHub Desktop comes packaged with Git, so there is no need to install Git separately. For more information, see "Getting started with GitHub Desktop."
Once you install Git, you can connect to GitHub Enterprise Server repositories from your local computer, whether your own repository or another user's fork. When you connect to a repository on your GitHub Enterprise Server instance from Git, you'll need to authenticate with GitHub Enterprise Server using either HTTPS or SSH. For more information, see "About remote repositories."
Everyone has their own unique workflow for interacting with GitHub; the interfaces and methods you use depend on your preference and what works best for your needs.
For more information about how to authenticate to GitHub Enterprise Server with each of these methods, see "About authentication to GitHub."
|Browse to GitHub.com||If you don't need to work with files locally, GitHub Enterprise Server lets you complete most Git-related actions directly in the browser, from creating and forking repositories to editing files and opening pull requests.||This method is useful if you want a visual interface and need to do quick, simple changes that don't require working locally.|
|GitHub Desktop||GitHub Desktop extends and simplifies your GitHub.com workflow, using a visual interface instead of text commands on the command line. For more information on getting started with GitHub Desktop, see "Getting started with GitHub Desktop."||This method is best if you need or want to work with files locally, but prefer using a visual interface to use Git and interact with GitHub Enterprise Server.|
|IDE or text editor||You can set a default text editor, like Atom or Visual Studio Code to open and edit your files with Git, use extensions, and view the project structure. For more information, see "Associating text editors with Git."||This is convenient if you are working with more complex files and projects and want everything in one place, since text editors or IDEs often allow you to directly access the command line in the editor.|
|Command line, with or without GitHub CLI||For the most granular control and customization of how you use Git and interact with GitHub Enterprise Server, you can use the command line. For more information on using Git commands, see "Git cheatsheet."|
GitHub CLI is a separate command-line tool you can install that brings pull requests, issues, GitHub Actions, and other GitHub features to your terminal, so you can do all your work in one place. For more information, see "GitHub CLI."
|This is most convenient if you are already working from the command line, allowing you to avoid switching context, or if you are more comfortable using the command line.|
|GitHub Enterprise Server API||GitHub has a REST API and GraphQL API that you can use to interact with GitHub Enterprise Server. For more information, see "Getting started with the API."||The GitHub Enterprise Server API would be most helpful if you wanted to automate common tasks, back up your data, or create integrations that extend GitHub.|
To make your communication clear and organized in issues and pull requests, you can use GitHub Flavored Markdown for formatting, which combines an easy-to-read, easy-to-write syntax with some custom functionality. For more information, see "About writing and formatting on GitHub."
You can learn GitHub Flavored Markdown with the "Communicating using Markdown" course on GitHub Learning Lab.
Our integrated search allows you to find what you are looking for among the many repositories, users and lines of code on GitHub Enterprise Server. You can search globally across all of GitHub Enterprise Server or limit your search to a particular repository or organization. For more information about the types of searches you can do on GitHub Enterprise Server, see "About searching on GitHub."
Our search syntax allows you to construct queries using qualifiers to specify what you want to search for. For more information on the search syntax to use in search, see "Searching on GitHub."
With GitHub Enterprise Server, you can create, edit, move and delete files in your repository or any repository you have write access to. You can also track the history of changes in a file line by line. For more information, see "Managing files on GitHub."
Any number of people can work together in repositories across GitHub Enterprise Server. You can configure settings, create project boards, and manage your notifications to encourage effective collaboration.
A repository is like a folder for your project. You can have any number of public and private repositories in your user account. Repositories can contain folders and files, images, videos, spreadsheets, and data sets, as well as the revision history for all files in the repository. For more information, see "About repositories."
When you create a new repository, you should initialize the repository with a README file to let people know about your project. For more information, see "Creating a new repository."
You can clone an existing repository from GitHub Enterprise Server to your local computer, making it easier to add or remove files, fix merge conflicts, or make complex commits. Cloning a repository pulls down a full copy of all the repository data that GitHub has at that point in time, including all versions of every file and folder for the project. For more information, see "Cloning a repository."
A fork is a copy of a repository that you manage, where any changes you make will not affect the original repository unless you submit a pull request to the project owner. Most commonly, forks are used to either propose changes to someone else's project or to use someone else's project as a starting point for your own idea. For more information, see "Working with forks."
If you have existing projects you'd like to move over to GitHub Enterprise Server you can import projects using the GitHub Importer, the command line, or external migration tools. For more information, see "Importing source code to GitHub."
You can collaborate on your project with others using your repository's issues, pull requests, and project boards. You can invite other people to your repository as collaborators from the Collaborators tab in the repository settings. For more information, see "Inviting collaborators to a personal repository."
You are the owner of any repository you create in your user account and have full control of the repository. Collaborators have write access to your repository, limiting what they have permission to do. For more information, see "Permission levels for a user account repository."
As the owner of a repository you can configure several settings, including the repository's visibility, topics, and social media preview. For more information, see "Managing repository settings."
By adding files like contributing guidelines, a code of conduct, and support resources to your repository you can create an environment where it's easier for collaborators to make meaningful, useful contributions. For more information, see "Setting up your project for healthy contributions."
Notifications provide updates about the activity on GitHub you've subscribed to or participated in. If you're no longer interested in a conversation, you can unsubscribe, unwatch, or customize the types of notifications you'll receive in the future. For more information, see "About notifications."
You can use GitHub Pages to create and host a website directly from a repository on your GitHub Enterprise Server instance. For more information, see "About GitHub Pages."
You can use tools from the GitHub Marketplace, the GitHub Enterprise Server API, and existing GitHub Enterprise Server features to customize and automate your work.
There are two versions of the GitHub Enterprise Server API: the REST API and the GraphQL API. You can use the GitHub Enterprise Server APIs to automate common tasks, back up your data, or create integrations that extend GitHub Enterprise Server. For more information, see "About GitHub's APIs."
With GitHub Actions, you can automate and customize your GitHub Enterprise Server instance's development workflow on GitHub Enterprise Server. You can create your own actions, and use and customize actions shared by the GitHub community. For more information, see "Learn GitHub Actions."
GitHub Packages is a software package hosting service that allows you to host your software packages privately or publicly and use packages as dependencies in your projects. For more information, see "Introduction to GitHub Packages."
There are many ways to participate in the GitHub community. You can contribute to open source projects, interact with people in the GitHub Community Support, or learn with GitHub Learning Lab.
Contributing to open source projects on GitHub can be a rewarding way to learn, teach, and build experience in just about any skill you can imagine. For more information, see "How to Contribute to Open Source" in the Open Source Guides.
You can find personalized recommendations for projects and good first issues based on your past contributions, stars, and other activities in Explore.
You can connect with developers around the world in GitHub Community Support to ask and answer questions, learn, and interact directly with GitHub Enterprise Server staff.
You can learn new skills by completing fun, realistic projects in your very own GitHub repository with GitHub Learning Lab. Each course is a hands-on lesson created by the GitHub community and taught by the friendly Learning Lab bot.
For more information, see "Git and GitHub learning resources."