> For the complete documentation index, see [llms.txt](https://cs-boys.gitbook.io/cs-remote-development/-MLoYUVJzvNDijhQmEH5/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cs-boys.gitbook.io/cs-remote-development/-MLoYUVJzvNDijhQmEH5/github/introduction.md).

# Introduction to Git & GitHub

![The Github Logo](/files/-MLoac9_iBhpBCW5nZZZ)

## Problem Statement

Through using [VS Code and Live Share](/cs-remote-development/-MLoYUVJzvNDijhQmEH5/visual-studio-code-1/live-share.md#live-share), developers can collaborate on code projects synchronously. However, synchronous collaboration is not always possible. When working as part of large teams it is difficult to find a chunk of time where developers can get together to code synchronously. Developers need a tool where they can work on code asynchronously and keep track of different versions of the code base.&#x20;

## Scope

There is a lot you can do with Git and GitHub but the basic workflow with GitHub is to create a remote repository with GitHub, sync that repository to a local workspace, and commit changes made locally back to the remote repository. This section gives instructions on how to perform this basic workflow and a high level view of the process.

## Constraints

Git is entirely free, and while there are paid versions of GitHub, all the actions in this user document can be done with the free version of GitHub.

## Background: Version Control, Git, and GitHub

Version control systems are tools that enable developers to work in parallel over shared projects and to synchronize changes that are made in parallel \[11]. With version control, developers can collaborate asynchronously. When working as part of large or distributed teams on complex projects, asynchronous collaboration is a necessity. Consequently, version control has become an important tool in the development cycle in industry and academia \[11].

Git is a free open source version control system that can store all files and their version history locally, eliminating the need for a central server \[12]. Git can be paired with GitHub, a free hosting service for Git repositories, in order to be used for collaborative software development. With Git and GitHub, developers can keep a remote version of their source code which others can download and edit asynchronously. Git and GitHub are not the only tools for version control, but with over 14 million registered users and 35 million repositories, Git and GitHub form one of the most widely used version control paradigms \[12].


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://cs-boys.gitbook.io/cs-remote-development/-MLoYUVJzvNDijhQmEH5/github/introduction.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
