Files
git-workshop/01-essentials/08-multiplayer/01_FACILITATOR.md
2026-01-15 15:42:05 +01:00

4.8 KiB

Facilitator Setup Guide

This guide helps workshop facilitators set up the cloud-based multiplayer Git module using Azure DevOps.

Overview

The Number Challenge is a collaborative Git exercise where students work together on a shared repository hosted on Azure DevOps.

What participants will do:

  • Clone a real repository from Azure DevOps
  • Collaborate to sort numbers 0-20 into the correct order
  • Experience push/pull workflow and merge conflicts
  • Learn to communicate and coordinate with teammates
  • Use SSH keys for secure authentication

Prerequisites

Azure DevOps Setup

You need:

  • Azure DevOps Organization - Free tier is sufficient
  • Project created within your organization
  • Admin access to create repositories and manage users

Workshop Materials

Participants need:

  • Git installed (version 2.23+)
  • VS Code (or any text editor)
  • SSH keys configured

Pre-Workshop Setup

Step 1: Add User Accounts

Add workshop participants to your Azure DevOps organization.

  1. Navigate to Organization SettingsUsers
  2. Click Add users
  3. Enter participant email addresses (Microsoft accounts)
  4. Select your workshop project
  5. Select Access level: Stakeholder (free) or Basic
  6. Click Add

Step 2: Create the Repository

Create the shared repository: number-challenge

  1. Sign in to Azure DevOps at dev.azure.com
  2. Navigate to your Project
  3. Click Repos in the left navigation
  4. Click the repo dropdown → New repository
  5. Fill in details:
    • Name: number-challenge
    • Add a README: Checked
  6. Click Create

Step 3: Add the Starter File

Create numbers.txt with numbers 0-20 in random order.

Option A: Via Azure DevOps web UI

  1. In your repository, click + NewFile
  2. Name it numbers.txt
  3. Add this content (numbers 0-20 shuffled):
17
3
12
8
19
1
14
6
11
0
20
9
4
16
2
18
7
13
5
15
10
  1. Click Commit

Option B: Via command line

git clone git@ssh.dev.azure.com:v3/{organization}/{project}/number-challenge
cd number-challenge

# Create numbers.txt with shuffled numbers
@"
17
3
12
8
19
1
14
6
11
0
20
9
4
16
2
18
7
13
5
15
10
"@ | Out-File -FilePath numbers.txt -Encoding UTF8

git add numbers.txt
git commit -m "feat: add shuffled numbers for challenge"
git push

Step 4: Verify Student Access

Students added to the project automatically have access. Verify:

  1. Go to Project SettingsRepositoriesnumber-challenge
  2. Click Security tab
  3. Verify project team has Contribute permission

During the Workshop

Getting Started

  1. Ensure all students have cloned the repository
  2. Have everyone open numbers.txt to see the shuffled numbers
  3. Explain the goal: sort numbers 0-20 into correct order

The Exercise Flow

  1. Students pull the latest changes
  2. One person moves a number to its correct position
  3. They commit and push
  4. Others pull and see the change
  5. Repeat until sorted

Creating Conflicts (The Learning Moment)

Conflicts happen naturally when multiple people edit at once. You can encourage this:

  • Have two students deliberately edit at the same time
  • Watch them experience the push rejection
  • Guide them through pulling and resolving the conflict

Monitoring Progress

Check progress in Azure DevOps:

  • Repos → Commits: See who's contributing
  • Repos → Files → numbers.txt: See current state

Common Issues

"I can't push!"

  • Did they pull first? Run git pull
  • Is SSH set up? Check with ssh -T git@ssh.dev.azure.com

"Merge conflict!"

  • Walk them through removing conflict markers
  • Help them understand both sides of the conflict

"Numbers are duplicated/missing!"

  • Someone resolved a conflict incorrectly
  • Have the team review and fix together

Success

When complete, numbers.txt should contain:

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

Celebrate the team's success!


Post-Workshop Cleanup

To reuse the repository:

  1. Reset numbers.txt to shuffled state
  2. Or delete and recreate the repository

Tips

  • Keep groups small (4-8 people) for more interaction
  • Encourage communication - the exercise works best when people talk
  • Let conflicts happen - they're the best learning opportunity
  • Walk the room - help students who get stuck
  • Point students to 03_TASKS.md - Simple explanations of clone, push, pull, and fetch for beginners

Troubleshooting

SSH Issues

  • Verify SSH key added to Azure DevOps (User Settings → SSH Public Keys)
  • Test: ssh -T git@ssh.dev.azure.com

Permission Issues

  • Check user is added to project
  • Verify Contribute permission on repository

Service Issues