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

Loading this video connects you to YouTube (Google), which receives your IP address and may store or read information on your device for playback and advertising. YouTube may show ads. Choose Load YouTube video to allow this for this video. See Google's privacy policy.

Watch Create and Clone Your First GitHub Repository with NVDA Screen Reader on YouTube

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. 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. If you already have a local project you want to bring to GitHub, that is a different setup from this one.

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. Here is the shape of the command. Paste your own address from GitHub, or replace YOUR-USERNAME with your GitHub account name and use your own repository name.

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 you can open in VS Code. Cloning brings the repository down, but changing a local file does not send that change back to GitHub. That is the next lesson: Push Changes to GitHub with VS Code and NVDA walks through editing the README, staging, committing, pushing, and checking the result on GitHub.

Analytics choices

May I use Google Analytics to understand which pages people read? If you accept, Google receives information about your visits and device, and stores analytics cookies in your browser. You can decline and still use the whole site.

If you close this dialog without choosing, analytics stays off and you will not be asked again on this device for 180 days. You can change your choice at any time using Analytics choices at the bottom of the page. Your choice is remembered for 180 days. Read the privacy policy.