What's changed: Expanded content (added diagrams)
3.2Forking and the Contribution Flow
The standard way to contribute to someone’s project you cannot write to is forking.
■ Fork vs clone • fork = copy the repository into your own account on GitHub (server-side). • clone = copy a repository to your machine (local). They differ in target and place: fork is on GitHub, clone is local.
■ The standard contribution flow (see the diagram)
1. Fork the upstream repository.
2. git clone your fork to your machine.
3. Create a working branch, make changes, and commit.
4. git push to your fork.
5. Open a Pull Request to the upstream (a cross-fork PR).
Add the original repo as the conventional remote upstream, and sync your fork via git fetch upstream to reduce conflicts at PR time.
■ Tips for a smooth process
• Enabling "Allow edits by maintainers" when opening a PR lets upstream maintainers commit to the PR branch to make small fixes and speed up merging.
• For large changes, discuss the approach in an Issue first rather than opening a PR cold.
• Follow the project’s CONTRIBUTING.md (how to contribute) and CODE_OF_CONDUCT.md.
• First-time contributors can start with approachable tasks labeled "good first issue".
Sign in to track progress — Log in.
Quick check
(just a quick review)Q1. Which correctly contrasts clone and fork?
Q2. Conventional remote name for the original repo?
Keep track of your progress
The full study guide is free to read. Sign up free to practice with the question bank, track what you have read, review your mistakes, and highlight passages.

