FREE GIT AND GITHUB COLLABORATION LEARNING PATH

WikiFree original practice workbook

The branch garden

CASE STATUS: fictional/synthetic teaching material. Do not present the example as real research, employment experience or measured business performance.

OUTCOME
Create a local Git collaboration exercise with focused commits, a feature branch, a resolved conflict and a clear review handover.

BEFORE YOU START
Basic files and command-line navigation. Git installed from its official source; GitHub account optional.

CASE
The fictional Cedar Handbook repository contains a README and a workshop schedule. Two branches change the same opening-time line from a shared base, creating a deliberate practice conflict. All work happens in a new disposable practice folder.

INPUTS
Version,Opening-time line
Base,Opens at 09:00
Main change,Opens at 10:00
Feature change,Opens at 09:30
Agreed resolution,Opens at 10:00; early check-in at 09:30


ENTRY CHECK

Question: Does git add create a commit?

Self-check: No. It stages selected content.

Question: Should a conflict be solved by deleting markers only?

Self-check: No. Resolve the intended combined meaning and verify it.

Question: Is GitHub required for local branching?

Self-check: No.

STAGE 1: Create a clean repository

Prerequisite: Basic files and command-line navigation. Git installed from its official source; GitHub account optional.

Instruction: Git tracks snapshots of selected files. The working tree, staging area and committed history are different states. Start a new practice folder, initialize it and create a README and schedule file. Inspect status and diff before committing so the first snapshot contains only intended content. Never place credentials or unrelated personal files in the exercise.

Practice task: Initialize the supplied two-file project and make a descriptive baseline commit. Save status and log output.

Deliverable: A clean repository with a baseline commit.

Acceptance check: The baseline contains only the README and schedule, and status is clean afterward.

If stuck: If unrelated files appear, stop and create the repository in the intended new folder.

Record your work, decisions and evidence:




Record your result against the acceptance check:



STAGE 2: Develop a focused branch

Prerequisite: Bring your previous output: A clean repository with a baseline commit.

Instruction: A branch names a line of work so a change can be reviewed before integration. Keep one logical purpose per commit and explain why the change is needed. A diff is the reviewable artifact; a commit message alone does not prove what changed. In this local exercise, no push or external repository is required.

Practice task: Create a feature branch, change the schedule line and commit it. Review the diff against the baseline.

Deliverable: A focused feature branch and change explanation.

Acceptance check: The diff contains the intended schedule change and no unrelated edits.

If stuck: Split formatting noise from the functional change so review remains understandable.

Record your work, decisions and evidence:




Record your result against the acceptance check:



STAGE 3: Produce and resolve the conflict

Prerequisite: Bring your previous output: A focused feature branch and change explanation.

Instruction: A conflict means Git cannot choose between overlapping edits automatically. Inspect both branch intentions and the agreed requirement. Replace the conflict region with the correct combined line, then verify the complete file and stage the resolution. Choosing one side blindly can discard a valid requirement even when the merge command eventually succeeds.

Practice task: Create the conflicting main-branch change using the walkthrough, merge the feature branch and resolve to the agreed line.

Deliverable: A merged history with a documented resolution.

Acceptance check: The final line includes 10:00 opening and 09:30 early check-in, with no conflict markers.

If stuck: Read the surrounding file after resolution; do not assume removing markers preserves both intentions.

Record your work, decisions and evidence:




Record your result against the acceptance check:



STAGE 4: Correct a mistake safely

Prerequisite: Bring your previous output: A merged history with a documented resolution.

Instruction: Inspect status and diff before undoing anything. A new revert commit can reverse a committed change while retaining history; restoring an uncommitted file discards its local edits and is a different operation. In the practice repository, demonstrate a deliberate mistake and a traceable correction. Avoid rewriting shared history as a beginner recovery technique.

Practice task: Make a separate typo commit, then correct it with a new commit or a documented revert. Explain the difference from discarding uncommitted work.

Deliverable: A traceable correction and recovery note.

Acceptance check: The final content is correct and the history shows what was corrected.

If stuck: Do not use a destructive reset to hide the mistake in this collaboration exercise.

Record your work, decisions and evidence:




Record your result against the acceptance check:



STAGE 5: Prepare a review handover

Prerequisite: Bring your previous output: A traceable correction and recovery note.

Instruction: A review request should explain the problem, resulting behavior and verification evidence. Include the branch comparison, conflict decision and any remaining limits. A GitHub pull request is an optional hosting workflow for the same review principles. The assessed outcome is a local repository another learner can inspect without access to a private account.

Practice task: Write a pull-request-style description and export a log plus final file diff. Optionally use your own GitHub repository later.

Deliverable: A review-ready local repository and handover note.

Acceptance check: A reviewer can identify the intended change, final schedule and conflict resolution from the supplied evidence.

If stuck: Replace vague works fine claims with the exact content and checks performed.

Record your work, decisions and evidence:




Record your result against the acceptance check:



WORKED CASE
The merged schedule preserves both agreed intentions: opening at 10:00 and early check-in at 09:30. A successful merge is meaningful only after checking that final behavior, not merely the absence of Git error output.

FINAL PROJECT
Deliver the local repository or Git bundle, a concise commit log, conflict explanation and review description. Demonstrate a clean working tree and explain how a reviewer recreates the exercise from the supplied walkthrough.

REQUIRED CRITICAL CHECK
The agreed final content is present, no conflict markers remain and no unrelated or secret files are committed.

SCORING
Score each of the five stage acceptance checks from 0–16 (0 missing/incorrect; 8 partially supported; 16 complete and evidenced). Score the final integrated project from 0–20 (0 missing; 10 incomplete handover; 20 complete, reproducible and consistent with the case). Target: at least 80/100 AND the critical check must pass. A total score never overrides a failed critical check.

SCOPE LIMIT
This covers a local collaboration workflow. It does not require a public GitHub upload or cover advanced rebasing, release automation or repository administration.

SOURCES AND ACCESS
Assigned public videos can be watched free. Complete the original case in a text editor, on paper or in a spreadsheet you already have. No paid course, exam or provider certificate is included.

Free Git and GitHub Course by Google
WikiFree: https://wikifree.com/courses/google-git-github-free-video-course/
Official source: https://www.youtube.com/playlist?list=PLTZYG7bZ1u6qck0rYNHO2Yfjzq5ZRRTCe
Why selected: Google introductory, beginner and collaboration lessons support the local workflow. The compilation video is excluded to avoid repeating the assigned material.

Stage 1 selected lessons:

1. Introduction to Git (6:09)
https://www.youtube.com/watch?v=0szcEwY-INI&list=PLTZYG7bZ1u6qck0rYNHO2Yfjzq5ZRRTCe&index=1

3. GitHub Tutorial Beginners (57:44)
https://www.youtube.com/watch?v=nn0Pr7U8YHc&list=PLTZYG7bZ1u6qck0rYNHO2Yfjzq5ZRRTCe&index=3

Stage 2 selected lessons:

2. Github Collaboration Tools (55:31)
https://www.youtube.com/watch?v=6fnlj5140ac&list=PLTZYG7bZ1u6qck0rYNHO2Yfjzq5ZRRTCe&index=2

Official Git branching and merging guide
https://git-scm.com/book/en/v2/Git-Branching-Basic-Branching-and-Merging

Git restore reference
https://git-scm.com/docs/git-restore

REUSE
Original WikiFree teaching text and synthetic fixtures are supplied for personal learning and adaptation with attribution. Provider lessons remain on their original sites and retain their own terms. No provider certificate is included.