FAQ on Github and Discord

This guide covers frequently asked questions participants, mentors and facilitators might have about using the Discord server and Github. This document does have exhaustive coverage of all issues participants might encounter but includes links to other resources that can provide help.



GitHub is a website and cloud-based service that helps developers store and manage their code, as well as track and control changes to their code. In the case of the AR/VR Africa 2020 Hackathon, participants will be using Github to store their challenges and collaborate with other participants. 


The guide below will walk you through some basic actions you will need to carry out on Github during your online learning journey.

Creating A Repository On Github

A repository is a remote folder for your project. Your project's repository contains all of your project's files and stores each file's revision history. You can also discuss and manage your project's work within the repository.

After you create your repository on GitHub, you can customize its settings and content.

About repository visibility

You can restrict who has access to a repository by choosing a repository's visibility: public, internal, or private.

Creating a new repository

You can create a new repository on your personal account or any organization where you have sufficient permissions.

Creating a repository from a template

You can generate a new repository with the same directory structure and files as an existing repository.


You can add a README file to your repository to tell other people why your project is useful, what they can do with your project, and how they can use it.

About code owners

You can use a CODEOWNERS file to define individuals or teams that are responsible for code in a repository.

About repository languages

The files and directories within a repository determine the languages that make up the repository. You can view a repository's languages to get a quick overview of the repository.

Creating a template repository

You can make an existing repository a template, so you and others can generate new repositories with the same directory structure, branches, and files.

Limits for viewing content and diffs in a repository

Certain types of resources can be quite large, requiring excessive processing on GitHub. Because of this, limits are set to ensure requests complete in a reasonable amount of time.

Duplicating a repository

To duplicate a repository without forking it, you can run a special clone command, then mirror-push to the new repository. For more information Creating a Repository, please follow this link


Cloning a repository from GitHub

You can clone a remote repository to your local machine. If you run into errors, there are some common troubleshooting solutions.

Cloning a repository

When you create a repository on GitHub, it exists as a remote repository. You can clone your repository to create a local copy on your computer and sync between the two locations.

HTTPS cloning errors

There are a few common errors when using HTTPS with Git. These errors usually indicate you have an old version of Git, or you don't have access to the repository.

Error: Repository not found

If you see this error when cloning a repository, it means that the repository does not exist or you do not have permission to access it. There are a few solutions to this error, depending on the cause.

Error: Remote HEAD refers to nonexistent ref, unable to checkout

This error occurs if the default branch of a repository has been deleted on GitHub.

For detailed information on Cloning a Repository, Please Follow the link below


Creating And Editing Commits


About commits

You can save small groups of meaningful changes as commits.

Creating a commit with multiple authors

You can attribute a commit to more than one author by adding one or more Co-authored-by trailers to the commit's message. Co-authored commits are visible on GitHub.

Creating a commit on behalf of an organization

You can create commits on behalf of an organization by adding a trailer to the commit's message. Commits attributed to an organization include an on-behalf-of badge on GitHub.

Changing a commit message

If a commit message contains unclear, incorrect, or sensitive information, you can amend it locally and push a new commit with a new message to GitHub. You can also change a commit message to add the missing information.

Get detailed information from the link below


Collaboration, Fork And Pull Request

Learn about the GitHub flow and different ways to collaborate on and discuss your projects.

About forks

A fork is a copy of a repository that you manage. Forks let you make changes to a project without affecting the original repository. You can fetch updates from or submit changes to the original repository with pull requests.

About pull requests

Pull requests let you tell others about changes you've pushed to a branch in a repository on GitHub. Once a pull request is opened, you can discuss and review the potential changes with collaborators and add follow-up commits before your changes are merged into the base branch

Please follow the link below for a complete guide on how to Fork a Project, carryout a Pull Request and more


Github Video Tutorials

  1. Getting started with Github https://youtu.be/iv8rSLsi1xo 
  2. How to Upload project from your Local device to Github https://youtu.be/1jbGFHICo0I or https://youtu.be/7NNI9uW8R_o
  3. How to get the Link to your Github Project or Repo https://youtu.be/bx2YGUv2nbA
  4. To view Github full documentation follow the link below https://docs.github.com/en/github.


Discord gives you the power to create an invite-only home for your friends or community - a place where you can talk, hang out, and have fun. We call these special places - servers, and they look like this


What Is A Server?

You can join or create servers for all kinds of communities - be it a book club, a dance class, a study group, or just some friends you want to spend time with. 

How To Use Text And Voice Channels

Your server is made up of text channels and voice channels.

Text Channels

Text channels are separate spaces for talking over text. They keep conversations organized and give everyone plenty of room to talk. Create separate channels for all the topics your group likes to talk about--from fishing trips to cooking tips.

Follow the link to learn more


Voice Channels

Voice channels are where you can hang out over voice and video. There’s no calling or ringing required - just click on a voice channel to enter it. Friends in your server can see you’re in there and pop in to talk, wave hello over the video, or share their screen.

Follow the link to learn more


How To Talk And Hang Out In Your Server

With voice channels, you can easily start chatting with your friends and community right away! Follow these guides below to learn how to voice chat, video chat, or share your screen or watch other people stream right within your server!

Follow the link to learn more


How To Voice Chat

Step 1: Join a Voice Channel!


Click a voice_channel.png voice channel in your server


Step 2: Start talking!


You should see a green outline around your avatar when you speak. 


If you need to adjust your voice settings, click the Vector_1.png cog icon to open your User Settings. On a desktop, you’ll find it in the lower-left corner of your server. From User Settings, head to Voice and Video settings to adjust your audio input, input sensitivity, and more.


Bonus Tip: You can adjust the volume of other people in the voice channel by right-clicking their avatar on a desktop, or pressing their name on mobile. 


Bonus tip: On a desktop, you can use Discord’s KRISP noise suppression to filter out unwanted background noise like lawnmowers or your neighbours’ dog barking up a storm. 


You can enable KRISP from the Screenshot_21.png icon in the lower-left voice panel.

How To Video Chat



Step 1: Join a Voice Channel!


Click a voice_channel.png voice channel in your server


Step 2: Share your Video!


Press the Video button in the bottom left corner and your video will be added to the voice channel. If you navigate away from the channel, just click it again to bring up 


Follow the link to learn more 



To change your input device, click the cog icon to open your User Settings. 


On a desktop, you’ll find it in the lower-left corner of your server. From User Settings, head to Voice and Video settings to update your video input device.

How To Share Your Screen

Step 1: Join a Voice Channel!


Click a voice_channel.png voice channel in your server


Step 2: Activate screen share


Press the Screen icon in the voice status panel near the bottom left corner and a new window will pop out.


Step 3: Pick an application or screen to share


Select an individual application window to share, or select an entire screen to share.


Step 4: Go Live!


Press the "Go Live" button at the bottom of the window when you are ready to share your stream 


Special Note: At this time, audio sharing is only available when sharing an application window on Windows 10. Audio sharing is unavailable on Mac and Linux at this time.

How To Join And Watch A Stream Or Screen Share:

Step 1: Find a stream


Look for any people with the Live icon within a voice_channel.png voice channel


Step 2: Join the Stream


Click on the username of the broadcaster with the Live icon to automatically join the stream

Once you've joined, you can change the size and location of your viewing window. You can also control the stream’s audio from the volume icon while hovering over the stream.


Follow the link to learn more 



Other Helpful Discord Video Tutorials 


You can watch this step by step guide on how to use Discord https://youtu.be/le_CE--Mnvs

If that video doesn’t do it for you, try this one https://youtu.be/rnYGrq95ezA


We hope this guide is helpful, but if you have any problems and can’t seem to fix it on your own, we’ll be very happy to help. Just reach out to one of the monitors and someone Github and Discord savvy will get in touch with you.