> For the complete documentation index, see [llms.txt](https://ykkim.gitbook.io/dlip/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ykkim.gitbook.io/dlip/programming/github/gitbook-desktop.md).

# Tutorial: Github Desktop

## What is Github Desktop

You can do version control easily with Github Desktop SW instead of using Git command lines

## Installation

1. [Download Github desktop from here](https://desktop.github.com)

![](/files/-Ma7c3z9hX2SSibwUdo0)

2\. Install the software. It will ask you to log-in your github account

![](/files/-Ma7crYiQqCEENI0rErw)

## Tutorial 1\*\*: Version Control (main branch)\*\*

### **1. Creating Repository and Cloning in Local Drive**

Go to github site and create a new repository

![](/files/-Ma7fm_cpF-yCw3BEAHH)

Create a public repository 'tutorialNM'. Check add 'README' file

![](/files/-Ma7gLXI8OF4cV1jMb_M)

Click 'Set up in Desktop'

![](/files/-Ma7hG-gS86JtSmTMRWn)

Choose your local drive folder path to clone a repository. This is making a copy of the repository in your local server/drive.

![](/files/-Ma7i-t2-VmyFiEoa4b4)

You can check which files have been saved in your local drive by clicking **'Show in Explorer'**

![](/files/-Ma7iOt2uq_YNc_cFxaw)

### 2. Add and Modify Documents

Try to add or modify documents in the repository

![](/files/-Ma7t2IjlDW2ICD45hJS)

You will see the history of changes in Desktop GUI

![](/files/-Ma7tAarA5KxYQMB9mMw)

## Tutorial 2. Collaboration Using Branch

### 1. Create a file in local computer and Publish/Pull to the remote

In Desktop, create or copy a source file. Example: "tutorialNM.h"

![](/files/-Ma7yZ4KmbNdcNYbVLhX)

Create a Branch. Lets call it as "NM-header-edit"

![](/files/-Ma7zCCV_g5ULSiwWu7a)

![](/files/-Ma7zZGg2fEZ25aTgy7y)

Now, Commit to the branch.

![](/files/-Ma7zdXVa1a5sYpis2qS)

**Publish your branch:** Publishing to the remote (Github website) \*\* `Ctrl+P`\*\*

***

**Pull Request** to Propose the change

![](/files/-Ma8-WseK3EVD9uze08V)

It will open a pull request in website. Click 'Create Pull Request'

![](/files/-Ma805z1Cnb1yuDLmPFL)

If the modification is acceptable, then **'Merge pull request'.** Then **Confirm the merge.**

![](/files/-Ma80S-RHp0j6lhofEfu)

### 2. Modify/Update the version of the file

Modify `tutorialNM.h` in the local drive.

![](/files/-Ma82H4yN6T3D9oONeVP)

Commit the modification

Push Origin: `Ctrl+P`

Open Pull Request: `Ctrl+R.`

![](/files/-Ma84Gr1iN8lveMYXhom)

Confirm merge to the main branch if the change is acceptable.


---

# 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://ykkim.gitbook.io/dlip/programming/github/gitbook-desktop.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.
