--- id: act-09-git-lab title: Git Lab mode: lab open_at: 2026-02-01T00:00:00+01:00 close_at: 2026-12-31T23:59:59+01:00 retakes_enabled: true max_attempts: 999 grade_max: 100 --- ## T1 Type: folder Points: 20 Prompt: Create folder @solutions/act-01-git-lab/t1-branching-basics/ containing commands.txt (commands+output) and graph.txt (output of git log --oneline --decorate --graph --all) for a repo where you created a branch, made at least one commit on each branch, and switched between branches. Refs: - mat-07-git#branching - mat-07-git#creating-and-switching-branches - mat-07-git#divergent-history-and-viewing-the-graph Rubric: - commands.txt shows branch creation, switching, and at least one commit on each branch (10) - graph.txt shows both branches in the graph (6) - Outputs are readable and clearly separated by command (4) ## T2 Type: single_choice Points: 10 Prompt: In the materials, what is HEAD used for? A) It is the server-side copy of your repository B) It is a special pointer that tells Git what branch you are currently on C) It is a list of ignored files D) It is the file that stores your username and email Refs: - mat-07-git#head-pointer-and-current-branch ## T3 Type: file Points: 20 Prompt: Create file @solutions/act-01-git-lab/t3-merge.txt containing commands+output for a merge scenario: create a topic branch, make changes, switch back to the base branch, make another commit, then git merge the topic branch and show the resulting git log --oneline --decorate --graph --all. Refs: - mat-07-git#fast-forward-merges - mat-07-git#three-way-merges - mat-07-git#merge-conflicts-and-resolution - mat-07-git#divergent-history-and-viewing-the-graph Rubric: - Shows creation of a topic branch and commits on both branches (8) - Shows a successful merge and the final graph output (8) - If a conflict occurred, shows resolution steps (edit, git add, git commit) (3) - Commands and outputs are clearly labeled (1) ## T4 Type: multiple_choice Points: 10 Prompt: Select ALL correct statements about merging from the materials. A) Fast-forward merge happens when there is no divergent history B) Three-way merge creates a merge commit with 2+ parents C) Fast-forward merge always creates a merge commit D) After merging a topic branch, it is common to delete it with git branch -d Refs: - mat-07-git#fast-forward-merges - mat-07-git#three-way-merges - mat-07-git#deleting-branches-after-merge ## T5 Type: file Points: 20 Prompt: Create file @solutions/act-01-git-lab/t5-remotes.txt containing commands+output for: showing remotes (git remote -v), adding or confirming origin (git remote add ... if needed), and pushing at least one branch to GitHub with git push (use git push -u origin if setting upstream). Refs: - mat-07-git#showing-and-adding-remotes - mat-07-git#pushing - mat-07-git#tracking-branches-upstream Rubric: - Includes git remote -v output showing at least one remote (6) - Demonstrates a push to GitHub with command and output (8) - Shows upstream setup (git push -u) or explains via output that branch is tracking (4) - Commands and outputs are clearly labeled (2) ## T6 Type: essay Points: 20 Prompt: Explain what merge conflict markers mean and list the exact steps to resolve a merge conflict until Git considers it resolved. Refs: - mat-07-git#merge-conflicts-and-resolution Rubric: - Correctly explains the meaning of conflict markers (<<<<<<<, =======, >>>>>>>) (8) - Lists the resolution workflow: edit, stage (git add), commit (git commit) (8) - Mentions checking state with git status and/or verifying final history (4)