Back to all posts

Create and Clone Your First GitHub Repository with NVDA

Create a public GitHub repository with a README, clone it over HTTPS, and open the local folder in VS Code using NVDA and the keyboard.

Watch the video

This is the first lesson in my Getting Started with GitHub series. I'm using NVDA and the keyboard to create a repository on GitHub, bring a copy onto my computer, and read the same README in VS Code. The video above is the full walkthrough; the steps below give you a written reference to follow at your own pace.

Before you start

Git tracks a project's files and version history. GitHub hosts repositories online. In this lesson, I start a new repository on GitHub and clone it, which creates a local copy on my computer. I'm using Windows 11, NVDA, Brave, and a WSL Ubuntu terminal, with Git and VS Code already installed. The signed-out introduction uses Chrome. You'll also need a GitHub account. The video shows where to find Sign up and Sign in, but it does not walk through account registration or installing Git and VS Code.

If you still need to set up your tools, these companion articles include the installation videos and written steps:

Git Bash and WSL Ubuntu are separate environments. If you follow along in Ubuntu, make sure Git is installed there too; Git for Windows alone does not provide Ubuntu's Git installation. You can check by running git --version in the terminal you plan to use.

Use the right NVDA mode for the task

NVDA+Space switches between browse mode and focus mode. The NVDA modifier may be Insert or Caps Lock, depending on your settings. In browse mode, I use H for headings, E for edit fields, B for buttons, and T for tables. Add Shift to move backward. When I want GitHub to receive its own single-letter shortcuts, I switch to focus mode.

In the recording, GitHub announces G then D for the dashboard and slash for quick search. These are sequential keys for G then D, not a chord. Switch to focus mode before using those site shortcuts, then back to browse mode to read the page. I mix up the mode names in a couple of places in the video; the distinction here is the one to follow. If a shortcut does not behave as expected, check your mode and use the named page control instead.

1. Create a new repository on GitHub

After signing in, find the Create new menu and choose New repository. On the form, choose the account that will own the repository and enter a short name. I use youtube-first-public-repo. You can add a description, but it is optional. I choose Public for this demonstration, so anyone can view the repository. A private repository limits access to people who have permission.

Turn on Add README. This gives the new repository an initial file and commit to clone. I leave .gitignore and the license unselected for this small demonstration, then activate Create repository. This is the path for a new example repository. If you are bringing an existing local Git project to GitHub, the setup differs; this lesson does not cover that import.

2. Check the README on GitHub

On the new repository page, I use T in browse mode to find the folders and files table. It contains README.md. Farther down the page, GitHub displays that Markdown file as formatted content. The heading with my repository name comes from the README; sections such as About and repository statistics belong to GitHub's interface. At about 11:40 in the video, I say YouTube while referring to GitHub generating the README. GitHub is the service I mean.

3. Copy the HTTPS clone address

There are two controls named Code to distinguish here: the repository's Code navigation link and the Code menu button above the files. The menu button is the one that opens cloning options. I use NVDA+Ctrl+F to find Code. If the first result is the navigation link, move farther down and search again until NVDA announces the Code menu button, then open it.

Choose Clone with HTTPS and activate Copy URL to clipboard. My recording initially has SSH selected, so I explicitly switch to HTTPS. Copy the address from your own repository's Code menu. That keeps the owner and repository name correct, even if you used a different name from mine.

4. Clone the repository in your terminal

Open your terminal in the folder where you want the new repository directory to be created. Type git clone followed by a space, paste the HTTPS address you copied, and press Enter. The following is an example of the command's structure. Replace YOUR-USERNAME with your GitHub account name and use your own repository name, or paste the complete address from GitHub instead. Do not run the placeholder address unchanged.

git clone https://github.com/YOUR-USERNAME/youtube-first-public-repo.git

When the clone succeeds, Git creates a directory named after the repository. In my WSL terminal, I run ls to check that youtube-first-public-repo is now present. If you see Repository not found or another error instead, check the copied URL and your access to the repository before continuing.

ls

5. Open the local copy in VS Code

From the same parent directory, I open the cloned folder with the code command. Use your own folder name if it differs. This assumes the code command is already available in your WSL terminal, as it is in my setup.

code youtube-first-public-repo

In VS Code, press Ctrl+Shift+E to open the Explorer. Find README.md and press Enter. Ctrl+Home moves to the beginning of the file. The heading contains the same repository name I read on GitHub. That is the connection I want you to see: GitHub displays the README online, and the clone contains the actual Markdown file on your computer.

What comes next

You now have a repository on GitHub and a local clone that you can open in VS Code. Cloning brings the repository down; changing a local file does not automatically send that change back to GitHub. The next lessons will move into authentication, SSH keys, and pushing local work. For this first step, getting the repository created, cloned, and opened is the goal.