{"post":{"slug":"what-is-a-git-fork-2026","title":"What Is a Git Fork in 2026: copies and contributions","excerpt":"A fork is your own server-side copy of someone elses repository, hosted on GitHub or a similar platform, that lets you change a project freely and propose those changes back through a pull request.","category":"code","date":"June 9, 2026","author":"ByteLedger Team","content":"<span class=\"dropcap\">A</span> fork is your own complete copy of someone elses repository, hosted under your account on a platform like GitHub or GitLab. It lets you change a project however you like without needing permission, and then propose those changes back to the original through a pull request. Forking is not a built-in Git command; it is a feature these hosting platforms add on top of Git. It is the mechanism that makes large open-source collaboration possible between strangers.\n\n## What forking really does\n\nWhen you fork a project, the platform creates a separate repository on your account that starts identical to the original. The original is usually called the upstream repository. From that point your fork is yours: you can push commits, create branches, and experiment freely, and none of it touches the upstream project. The two repositories are linked in the platform interface so you can later send changes back, but they are otherwise independent.\n\nThis is different from cloning. Cloning copies a repository to your local machine. Forking copies it to your account on the server. In practice you usually fork on the platform and then clone your fork to your computer to work on it. If the platform side is new to you, see [how to use Git and GitHub](/blog/how-to-use-git-and-github-2026).\n\n## Fork versus branch\n\nThese get confused constantly, so here is the clear distinction.\n\n| Aspect | Branch | Fork |\n|---|---|---|\n| Lives | Inside one repository | As a separate repository you own |\n| Created by | A core Git command | A platform feature on top of Git |\n| Permission needed | Write access to the repo | None, anyone can fork a public repo |\n| Typical use | Your own or your teams work | Contributing to a project you do not own |\n| Send changes back | Merge into another branch | Open a pull request to the upstream |\n\nThe rule of thumb: branch when you can write to the repository, fork when you cannot.\n\n## How a fork-based contribution works\n\n```bash\n// after forking on the platform, clone your fork locally\ngit clone https://github.com/you/project.git\ngit switch -c fix-typo          // make a branch for the change\ngit commit -am \"fix typo in docs\"\ngit push origin fix-typo        // push to your fork\n// then open a pull request from your fork to the upstream repo\n```\n\nThe upstream maintainers review the pull request and merge it if they accept it. Your fork stays around, and you can keep it in sync by pulling updates from upstream.\n\n## How to use forks well\n\n1. Fork only when you do not have write access; otherwise just branch in the original repo.\n2. Add the original as an `upstream` remote so you can pull its latest changes into your fork.\n3. Sync your fork before starting new work so your changes apply cleanly.\n4. Open one focused pull request per change rather than bundling unrelated edits.\n5. Delete your fork once the work is merged and you no longer need it.\n\n## What to skip\n\n- **Skip forking when you can branch.** Maintaining a divergent copy is extra overhead if you already have write access.\n- **Skip letting a fork go stale.** A fork that never syncs drifts far from upstream and becomes hard to contribute from.\n- **Skip giant pull requests.** Maintainers review smaller, focused changes much faster.\n- **Skip assuming a fork is private.** Forking a public repo creates another public repo by default on most platforms.\n\n## FAQ\n\n**Is forking the same as cloning?**\nNo. Forking makes a copy on your account on the hosting platform. Cloning makes a copy on your local machine. You often fork first, then clone your fork to work on it.\n\n**Is a fork part of Git itself?**\nNot really. Git has no fork command. Forking is a feature added by platforms like GitHub and GitLab to make it easy to copy and contribute to projects you do not control.\n\n**How do I get updates from the original project?**\nAdd the original repository as a remote, usually named upstream, then fetch and merge its changes into your fork. This keeps your copy current with the source project.\n\n**Do I need a fork to contribute to open source?**\nUsually yes, if you lack write access to the project. The standard flow is to fork, make your change on a branch, push it to your fork, and open a pull request to the original.\n\n## Where to go next\n\n[Learn what a Git repository is](/blog/what-is-a-git-repository-2026), [understand branches inside a repo](/blog/what-is-a-git-branch-2026), and [compare Git and GitHub](/blog/git-vs-github-2026).","hue":200,"metaTitle":"What Is a Git Fork in 2026? Forks Explained","metaDescription":"What is a Git fork? A 2026 guide to how forks copy a repository, how they differ from branches, and how forks and pull requests power open source.","keywords":["what is a git fork 2026","git fork explained","how forking works","fork vs branch","fork a repository","pull request from fork","github fork","open source contribution","upstream repository","sync a fork"],"tldr":["**A fork is a full copy you own** — it lives on your account on GitHub or GitLab, separate from the original.","**It is a platform feature, not core Git** — forking is something hosting sites add, not a built-in Git command.","**It powers open-source contributions** — you fork, change, then open a pull request asking the original to merge it.","**A fork differs from a branch** — a branch lives inside one repository; a fork is a separate repository entirely.","**Skip:** forking when you have write access; just branch in the original repo instead of maintaining a divergent copy."],"readTime":"4 min read","wordCount":772},"related":[{"slug":"how-to-use-github-2026","title":"How to use GitHub in 2026: from your first repo to pull requests","excerpt":"GitHub is where code lives, collaboration happens, and careers are built in 2026. Here is the practical guide from first repo to merging your first PR.","category":"code","date":"March 18, 2026","author":"ByteLedger Team","readTime":"5 min read","hue":315},{"slug":"what-is-a-pull-request-2026","title":"What is a pull request in 2026? How code review works on Git","excerpt":"A pull request is a proposal to merge your code changes into a shared branch, with built-in review. This guide explains how pull requests work and how to open a good one in 2026.","category":"code","date":"June 10, 2026","author":"ByteLedger Team","readTime":"3 min read","hue":268},{"slug":"what-is-a-pull-request-review-2026","title":"What Is a Pull Request Review in 2026?","excerpt":"A pull request review is the formal approve, comment, or request-changes decision attached to a pull request, not just the act of reading code. Here is how the review step actually works in 2026.","category":"code","date":"July 20, 2026","author":"ByteLedger Team","readTime":"4 min read","hue":310}],"sameCategory":[{"slug":"bazel-build-explained-2026","title":"Bazel Explained: What Hermetic Builds Actually Cost","excerpt":"Bazel delivers reproducible, precisely cached builds and demands that you describe everything. Here is what you get, what it costs, and who should say no.","category":"code","date":"August 19, 2026","author":"ByteLedger Team","readTime":"3 min read","hue":145},{"slug":"graphql-federation-2026","title":"GraphQL Federation: One Graph, Many Teams","excerpt":"Federation composes independently-owned subgraphs into a single API. Here is what it solves, the operational cost it adds, and when a simpler gateway is enough.","category":"code","date":"August 19, 2026","author":"ByteLedger Team","readTime":"3 min read","hue":300},{"slug":"hermetic-builds-explained-2026","title":"Hermetic Builds Explained: Same Inputs, Same Output","excerpt":"A hermetic build depends only on declared inputs. Here is what that property gives you, the common leaks that break it, and how to move toward it incrementally.","category":"code","date":"August 19, 2026","author":"ByteLedger Team","readTime":"3 min read","hue":130},{"slug":"monorepo-tooling-compared-2026","title":"Monorepo Tooling Compared: What You Actually Need","excerpt":"Monorepo tools solve task orchestration and caching, not repository layout. Here is what each tier provides and how to tell when you have outgrown the simple option.","category":"code","date":"August 19, 2026","author":"ByteLedger Team","readTime":"3 min read","hue":150}],"newer":{"slug":"what-is-a-firewall-2026","title":"What Is a Firewall in 2026? A Plain-English Guide","excerpt":"A clear, jargon-free explanation of what a firewall is in 2026, how it filters network traffic, the main types, and whether you need to configure one.","category":"tech","date":"June 9, 2026","author":"ByteLedger Team","readTime":"4 min read","hue":200},"older":{"slug":"what-is-a-hard-inquiry-2026","title":"What is a hard inquiry in 2026: effect on your credit","excerpt":"A hard inquiry is a credit check that happens when you apply for new credit, and it can ding your score slightly. Here is how it differs from a soft pull and how long it lingers.","category":"finance","date":"June 9, 2026","author":"ByteLedger Team","readTime":"3 min read","hue":16}}