0
0
GitHow-ToBeginner · 3 min read

How to Fork a Repository in GitHub: Step-by-Step Guide

To fork a repository in GitHub, go to the repository page and click the Fork button at the top right. This creates a copy of the repository under your GitHub account, allowing you to freely make changes without affecting the original.
📐

Syntax

Forking a repository on GitHub is done through the web interface, not via command line. The main steps are:

  • Go to the repository page: Navigate to the GitHub repository you want to fork.
  • Click the Fork button: Located at the top-right corner of the page.
  • Choose your account: If you belong to multiple organizations, select where to fork.
  • Wait for the fork to complete: GitHub copies the repository to your account.

After forking, you can clone your fork locally using git clone to start working.

bash
git clone https://github.com/your-username/forked-repository.git
💻

Example

This example shows how to fork the octocat/Hello-World repository and clone it locally.

bash
1. Open https://github.com/octocat/Hello-World in your browser.
2. Click the <code>Fork</code> button at the top-right.
3. Select your GitHub account to fork the repo.
4. After the fork completes, open a terminal.
5. Run:
   git clone https://github.com/your-username/Hello-World.git
6. Change directory:
   cd Hello-World
7. Start making your changes locally.
Output
Cloning into 'Hello-World'... remote: Enumerating objects: 10, done. remote: Counting objects: 100% (10/10), done. remote: Compressing objects: 100% (8/8), done. remote: Total 10 (delta 1), reused 10 (delta 1), pack-reused 0 Receiving objects: 100% (10/10), done.
⚠️

Common Pitfalls

Some common mistakes when forking a GitHub repository include:

  • Not clicking the Fork button and trying to clone the original repo directly, which prevents you from pushing changes.
  • Forgetting to set the original repository as an upstream remote to pull updates later.
  • Trying to push changes to the original repository without permission instead of your fork.

To fix these, always fork first, then clone your fork, and add the original repo as upstream:

bash
git remote add upstream https://github.com/original-owner/original-repo.git
# Fetch updates from original repo
git fetch upstream
# Merge updates into your branch
git merge upstream/main
📊

Quick Reference

StepAction
1Go to the repository page on GitHub
2Click the Fork button at top-right
3Select your account or organization
4Wait for the fork to complete
5Clone your fork locally with git clone
6Add original repo as upstream remote (optional)

Key Takeaways

Forking creates your own copy of a repository on GitHub to work independently.
Always fork via the GitHub web interface before cloning to your local machine.
Add the original repository as an upstream remote to keep your fork updated.
Push changes to your fork, not the original repository, unless you have permission.
Use the Fork button at the top-right of the repository page to start.