Repository navigation
Expand file tree
/
Copy pathCHALLENGES.html
More file actions
607 lines (551 loc) · 42.4 KB
/
Copy pathCHALLENGES.html
File metadata and controls
607 lines (551 loc) · 42.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="GIT Going with GitHub - A two-day accessible open source workshop by Community Access">
<title>Challenge Hub - GIT Going with GitHub</title>
<link rel="stylesheet" href="../styles/github-markdown.css">
<link rel="stylesheet" href="../styles/highlight.css">
<link rel="stylesheet" href="../styles/custom.css">
<style>
.markdown-body {
box-sizing: border-box;
min-width: 0;
max-width: 980px;
margin: 0;
padding: 45px;
}
.page-layout {
max-width: 1320px;
margin: 0 auto;
padding: 1rem 1rem 2rem;
display: grid;
grid-template-columns: minmax(240px, 300px) minmax(0, 1fr);
gap: 1.25rem;
align-items: start;
}
@media (max-width: 767px) {
.page-layout {
grid-template-columns: 1fr;
padding: 0.5rem 0.5rem 1rem;
}
.markdown-body {
padding: 15px;
}
}
</style>
</head>
<body>
<a class="skip-link" href="#main-content">Skip to main content</a>
<header class="site-header" role="banner">
<div class="site-header-inner">
<nav aria-label="Breadcrumb" class="breadcrumb">
<a href="../index.html">Home</a> <span aria-hidden="true">›</span> <span aria-current="page">Challenge Hub</span>
</nav>
<div class="header-actions">
<a href="https://github.com/Community-Access/git-going-with-github/wiki" class="wiki-link" target="_blank" rel="noopener noreferrer">
<svg aria-hidden="true" focusable="false" width="16" height="16" viewBox="0 0 16 16" fill="currentColor">
<path d="M1.75 1h8.5c.966 0 1.75.784 1.75 1.75v5.5A1.75 1.75 0 0 1 10.25 10H7.06l-2.573 2.573A1.458 1.458 0 0 1 2 11.543V10h-.25A1.75 1.75 0 0 1 0 8.25v-5.5C0 1.784.784 1 1.75 1ZM1.5 2.75v5.5c0 .138.112.25.25.25h1a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h3.5a.25.25 0 0 0 .25-.25v-5.5a.25.25 0 0 0-.25-.25h-8.5a.25.25 0 0 0-.25.25Zm13 2a.25.25 0 0 0-.25-.25h-.5a.75.75 0 0 1 0-1.5h.5c.966 0 1.75.784 1.75 1.75v5.5A1.75 1.75 0 0 1 14.25 12H14v1.543a1.457 1.457 0 0 1-2.487 1.03L9.22 12.28a.749.749 0 1 1 1.06-1.06l2.22 2.22v-2.19a.75.75 0 0 1 .75-.75h.25a.25.25 0 0 0 .25-.25v-5.5Z"/>
</svg>
Wiki
</a>
<form role="search" class="search-form" action="../search.html" method="get">
<label for="site-search" class="search-label">Search docs</label>
<input
type="search"
id="site-search"
class="search-input"
name="q"
placeholder="Search docs…"
autocomplete="off"
aria-label="Search documentation"
>
<button type="submit" class="search-button" aria-label="Submit search">
<svg aria-hidden="true" focusable="false" width="16" height="16" viewBox="0 0 16 16" fill="currentColor">
<path d="M10.68 11.74a6 6 0 0 1-7.922-8.982 6 6 0 0 1 8.982 7.922l3.04 3.04a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215ZM11.5 7a4.499 4.499 0 1 0-8.997 0A4.499 4.499 0 0 0 11.5 7Z"/>
</svg>
</button>
</form>
</div>
</div>
</header>
<div class="page-layout">
<aside class="guided-sidebar" aria-label="Guided reference">
<h2 class="guided-title">Guided Reference</h2>
<p class="guided-intro">Follow the learning order, then jump into challenge issue views, appendices, and support resources.</p>
<section class="guided-progress" aria-label="Learning progress">
<h3>Learning Progress</h3>
<p class="guided-progress-copy">3 of 55 pages in the guided sequence</p>
<div class="guided-progress-track" role="progressbar" aria-valuemin="0" aria-valuemax="100" aria-valuenow="5" aria-label="Guided sequence progress">
<span class="guided-progress-fill" style="width:5%;"></span>
</div>
<p class="guided-progress-percent">5% complete</p>
</section>
<section class="guided-resume" aria-label="Resume learning">
<a id="resume-link" class="guided-resume-link" href="../index.html" hidden>Resume where you left off</a>
</section>
<nav class="guided-nav" aria-label="Workshop navigation">
<section class="guided-section">
<h3>Start Here</h3>
<ul>
<li><a href="../index.html">Workshop Home</a></li>
<li><a href="../docs/course-guide.html">Course Guide</a></li>
<li><a href="../docs/get-going.html">Get Going with GitHub</a></li>
<li><a href="../docs/CHALLENGES.html" aria-current="page" class="guided-active">Challenge Hub</a></li>
</ul>
</section>
<section class="guided-section">
<h3>Learning Order</h3>
<details open>
<summary>Day 1 chapters</summary>
<ul>
<li><a href="../docs/00-pre-workshop-setup.html">Pre-Workshop Setup - GIT Going with GitHub</a></li>
<li><a href="../docs/01-choose-your-tools.html">Choose Your Adventure: A Tool Tour</a></li>
<li><a href="../docs/02-understanding-github.html">Understanding GitHub's Web Structure</a></li>
<li><a href="../docs/03-navigating-repositories.html">Navigating Repositories</a></li>
<li><a href="../docs/04-the-learning-room.html">The Learning Room: Your Personal Practice Repository</a></li>
<li><a href="../docs/05-working-with-issues.html">Working with Issues</a></li>
<li><a href="../docs/06-working-with-pull-requests.html">Working with Pull Requests</a></li>
<li><a href="../docs/07-merge-conflicts.html">Merge Conflicts</a></li>
<li><a href="../docs/08-open-source-culture.html">Culture, Etiquette, and Community Standards</a></li>
<li><a href="../docs/09-labels-milestones-projects.html">Labels, Milestones, and Projects</a></li>
<li><a href="../docs/10-notifications-and-day-1-close.html">Notifications</a></li>
</ul>
</details>
<details open>
<summary>Day 2 chapters</summary>
<ul>
<li><a href="../docs/11-vscode-interface.html">VS Code: Interface and Setup</a></li>
<li><a href="../docs/12-vscode-accessibility.html">VS Code: Accessibility Deep Dive</a></li>
<li><a href="../docs/13-how-git-works.html">How Git Works: The Mental Model</a></li>
<li><a href="../docs/14-git-in-practice.html">Git & Source Control in VS Code</a></li>
<li><a href="../docs/15-code-review.html">Code Review: PRs, Diffs, and Constructive Feedback</a></li>
<li><a href="../docs/16-github-copilot.html">GitHub Copilot</a></li>
<li><a href="../docs/17-issue-templates.html">Issue Templates</a></li>
<li><a href="../docs/18-fork-and-contribute.html">Fork and Contribute: The Open Source Workflow</a></li>
<li><a href="../docs/19-accessibility-agents.html">Accessibility Agents</a></li>
<li><a href="../docs/20-build-your-agent.html">Capstone Project: Contribute an Impactful Agent</a></li>
<li><a href="../docs/21-github-accessibility-and-open-source.html">GitHub Accessibility and Open Source at Scale</a></li>
<li><a href="../docs/22-what-comes-next.html">What Comes Next: Your Developer Journey</a></li>
</ul>
</details>
</section>
<section class="guided-section">
<h3>Appendices</h3>
<details>
<summary>Reference library</summary>
<ul>
<li><a href="../docs/appendix-a-glossary.html">Appendix A: GitHub Concepts & Glossary</a></li>
<li><a href="../docs/appendix-b-screen-reader-cheatsheet.html">Appendix B: Screen Reader Cheat Sheet</a></li>
<li><a href="../docs/appendix-c-markdown-reference.html">Appendix C: Markdown and GitHub Flavored Markdown - Complete Guide</a></li>
<li><a href="../docs/appendix-d-git-authentication.html">Appendix D: Git Authentication</a></li>
<li><a href="../docs/appendix-e-advanced-git.html">Appendix E: Advanced Git Operations</a></li>
<li><a href="../docs/appendix-f-git-security.html">Appendix F: Git Security for Contributors</a></li>
<li><a href="../docs/appendix-g-vscode-reference.html">Appendix G: VS Code Accessibility Reference</a></li>
<li><a href="../docs/appendix-h-github-desktop.html">Appendix H: GitHub Desktop</a></li>
<li><a href="../docs/appendix-i-github-cli.html">Appendix I: GitHub CLI Reference</a></li>
<li><a href="../docs/appendix-j-cloud-editors.html">Appendix J: GitHub Codespaces</a></li>
<li><a href="../docs/appendix-k-copilot-reference.html">Appendix K: Copilot Reference</a></li>
<li><a href="../docs/appendix-l-agents-reference.html">Appendix L: Accessibility Agents Reference</a></li>
<li><a href="../docs/appendix-m-accessibility-standards.html">Appendix M: Accessibility Standards Reference</a></li>
<li><a href="../docs/appendix-n-advanced-search.html">Appendix N: GitHub Advanced Search</a></li>
<li><a href="../docs/appendix-o-branch-protection.html">Appendix O: Branch Protection Rules and Repository Rulesets</a></li>
<li><a href="../docs/appendix-p-security-features.html">Appendix P: GitHub Security Features</a></li>
<li><a href="../docs/appendix-q-actions-workflows.html">Appendix Q: GitHub Actions and Workflows</a></li>
<li><a href="../docs/appendix-r-projects-deep-dive.html">Appendix R: GitHub Projects Deep Dive</a></li>
<li><a href="../docs/appendix-s-releases-tags-insights.html">Appendix S: Releases, Tags, and Repository Insights</a></li>
<li><a href="../docs/appendix-t-community-and-social.html">Appendix T: Community and Social</a></li>
<li><a href="../docs/appendix-u-discussions-and-gists.html">Appendix U: Discussions and Gists</a></li>
<li><a href="../docs/appendix-v-github-mobile.html">Appendix V: GitHub Mobile</a></li>
<li><a href="../docs/appendix-w-github-pages.html">Appendix W: Publishing with GitHub Pages</a></li>
<li><a href="../docs/appendix-x-resources.html">Appendix X: Resources</a></li>
<li><a href="../docs/appendix-y-workshop-materials.html">Appendix Y: Accessing and Downloading Workshop Materials</a></li>
<li><a href="../docs/appendix-z-github-skills.html">Appendix Z: GitHub Skills - Complete Course Catalog</a></li>
<li><a href="../docs/appendix-aa-agent-installation-setup.html">Appendix AA: Agent Installation & Setup Across All Platforms</a></li>
<li><a href="../docs/appendix-ab-advanced-agent-patterns.html">Appendix AB: Advanced Agent Patterns & Skills</a></li>
<li><a href="../docs/appendix-ac-document-developer-tools.html">Appendix AC: Document & Developer Tool Agents</a></li>
</ul>
</details>
</section>
<section class="guided-section">
<h3>Challenge Lab</h3>
<ul>
<li><a href="../docs/CHALLENGES.html" aria-current="page" class="guided-active">Challenge Hub</a></li>
<li><a href="../work.html">Issue-Style Challenge Walkthrough</a></li>
<li><a href="../docs/17-issue-templates.html">Issue Template Deep Dive</a></li>
</ul>
</section>
<section class="guided-section">
<h3>External Resources</h3>
<ul>
<li><a href="https://lp.csedesigns.com/ggg/PODCASTS.html">Podcast Episodes <span class="guided-external">(external)</span></a></li>
<li><a href="https://lp.csedesigns.com/ggg/feed.xml">RSS Feed <span class="guided-external">(external)</span></a></li>
</ul>
</section>
<section class="guided-section">
<h3>Get Help</h3>
<ul>
<li><a href="https://github.com/Community-Access/support">Support Hub <span class="guided-external">(external)</span></a></li>
</ul>
</section>
</nav>
</aside>
<main id="main-content" class="markdown-body page-main">
<nav class="quick-jumps" aria-label="Quick jumps">
<h2 class="quick-jumps-title">Quick Jumps</h2>
<ul class="quick-jumps-list">
<li><a href="#course-content">Jump to course content</a></li><li><a href="#main-content">Jump to main content top</a></li><li><a href="#on-this-page">Jump to on-page sections</a></li><li><a href="../docs/CHALLENGES.html">Open challenge hub</a></li><li><a href="../work.html">Open issue-style challenge walkthrough</a></li>
</ul>
</nav>
<nav id="on-this-page" class="onpage-nav" aria-label="On this page">
<h2 class="onpage-title">On This Page</h2>
<ul class="onpage-list">
<li class="onpage-item"><a href="#how-challenges-work">How Challenges Work</a></li>
<li class="onpage-item"><a href="#day-1-you-belong-here-challenges-1-9">Day 1: You Belong Here (Challenges 1-9)</a></li>
<li class="onpage-item"><a href="#day-2-you-can-build-this-challenges-10-16">Day 2: You Can Build This (Challenges 10-16)</a></li>
<li class="onpage-item"><a href="#bonus-challenges">Bonus Challenges</a></li>
<li class="onpage-item"><a href="#skills-inspired-optional-scenarios">Skills-Inspired Optional Scenarios</a></li>
<li class="onpage-item"><a href="#if-you-get-stuck">If You Get Stuck</a></li>
<li class="onpage-item"><a href="#authoritative-sources">Authoritative Sources</a></li>
<li class="onpage-item onpage-sub"><a href="#section-level-source-map">Section-Level Source Map</a></li>
</ul>
</nav>
<div id="course-content"><h1 id="challenge-hub">Challenge Hub</h1>
<p>Welcome to the Challenge Hub - your guide to all 16 core challenges and 5 bonus challenges.</p>
<p>The challenges are the practice path for the course. Each one asks you to do a small piece of real GitHub work, leave evidence of what you did, and then close the issue so the next challenge can open. The goal is not speed. The goal is to build a contributor rhythm you can trust: orient yourself, make the move, verify the result, and ask for help with clear facts when something feels off.</p>
<p>Prefer the exact issue-style flow? Open the consolidated issue walkthrough: <a href="../work.html">Issue-Style Challenge Walkthrough</a>.</p>
<h2 id="how-challenges-work">How Challenges Work</h2>
<p>Start in your private Learning Room repository, not in the public curriculum repository. Open the <strong>Issues</strong> tab, find the challenge issue assigned to you, and read the issue body before acting. Each issue explains the task, the evidence prompt, and any buddy check or automated check that applies.</p>
<p>When a challenge asks for evidence, post it as a comment on that challenge issue. Evidence can be a link, a short reflection, the name of a branch, a pull request number, or a note about what you tried and what happened. After you post the evidence, close the challenge issue. The Student Progression Bot uses that closed issue as the signal to open the next challenge.</p>
<p>Every challenge below includes a reference solution. Treat those files as worked examples, not answer keys. Your exact branch name, issue number, wording, or file count may differ. What matters is whether you practiced the skill and can explain the result.</p>
<h2 id="day-1-you-belong-here-challenges-1-9">Day 1: You Belong Here (Challenges 1-9)</h2>
<details>
<summary>Challenge 1: Find Your Way Around</summary>
<p><strong>Chapters:</strong> Ch02-04 | <strong>Evidence:</strong> Comment</p>
<p>This first challenge is about orientation. Before you edit anything, you learn how a repository is organized: where the Code tab lives, where Issues live, how the file tree behaves, and how the README gives a project its front door.</p>
<p><strong>What to do:</strong></p>
<ul>
<li>Find the Code tab and count the files or folders in the repository root</li>
<li>Open the Issues tab and identify at least one issue or confirm the tab exists</li>
<li>Navigate to <code>docs/welcome.md</code> and read the opening paragraph</li>
<li>Find the repository description and the rendered README</li>
</ul>
<p><strong>Evidence to post:</strong> Describe what you found and name one navigation shortcut or screen reader technique that helped.</p>
<p>Compare your result with the <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-01-scavenger-hunt.md">Challenge 1 solution reference</a> when you want a second view of the same exploration path.</p>
</details>
<details>
<summary>Challenge 2: File Your First Issue</summary>
<p><strong>Chapter:</strong> Ch05 | <strong>Evidence:</strong> Comment</p>
<p>Issues are how maintainers turn observations into trackable work. In this challenge, you find a small TODO in the Learning Room and write an issue that another person could understand without being in the room with you.</p>
<p><strong>What to do:</strong></p>
<ul>
<li>Open <code>docs/welcome.md</code> and search for <code>TODO</code></li>
<li>Create a new issue with a specific title</li>
<li>Explain what needs to change, where it is, and why the change would help</li>
</ul>
<p><strong>Evidence to post:</strong> Link to the issue you created and include one sentence about why your title is clear.</p>
<p>If you want to compare tone and structure, read the <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-02-first-issue.md">Challenge 2 solution reference</a>.</p>
</details>
<details>
<summary>Challenge 3: Join the Conversation</summary>
<p><strong>Chapter:</strong> Ch05 | <strong>Evidence:</strong> Comment</p>
<p>Open source is conversation as much as code. This challenge teaches you how to participate in an issue thread with an @mention, a reaction, and a comment that moves the work forward.</p>
<p><strong>What to do:</strong></p>
<ul>
<li>Find your buddy's Challenge 2 issue or a facilitator-provided peer simulation issue</li>
<li>Leave a meaningful comment with an @mention</li>
<li>Add a reaction to the original issue or a helpful comment</li>
</ul>
<p><strong>Evidence to post:</strong> Link to your comment and describe what made it useful, kind, or specific.</p>
<p>The <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-03-conversation.md">Challenge 3 solution reference</a> shows one way to make a short comment feel genuinely collaborative.</p>
</details>
<details>
<summary>Challenge 4: Branch Out</summary>
<p><strong>Chapter:</strong> Ch06 | <strong>Evidence:</strong> Comment</p>
<p>A branch is a safe workspace. It lets you try a change without rewriting the main version of the project. In this challenge, you create your own branch and confirm that you know where your work will happen.</p>
<p><strong>What to do:</strong></p>
<ul>
<li>Find the branch selector on the Code tab</li>
<li>Create a branch named <code>learn/YOUR-USERNAME</code> from <code>main</code></li>
<li>Confirm the branch selector now names your branch</li>
</ul>
<p><strong>Evidence to post:</strong> Write the branch name you created and how you confirmed you were on it.</p>
<p>Use the <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-04-branch-out.md">Challenge 4 solution reference</a> if you want to check your branch mental model.</p>
</details>
<details>
<summary>Challenge 5: Make Your Mark</summary>
<p><strong>Chapter:</strong> Ch06 | <strong>Evidence:</strong> Comment</p>
<p>This is your first small content change. You edit a file, replace a TODO with real text, and commit the change with a message that explains what happened.</p>
<p><strong>What to do:</strong></p>
<ul>
<li>Switch to your <code>learn/YOUR-USERNAME</code> branch</li>
<li>Edit <code>docs/welcome.md</code> to replace the TODO with useful content</li>
<li>Write a commit message that explains the change in plain language</li>
</ul>
<p><strong>Evidence to post:</strong> Share your commit message and the file you edited.</p>
<p>For a worked example of a focused commit, compare with the <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-05-make-your-mark.md">Challenge 5 solution reference</a>.</p>
</details>
<details>
<summary>Challenge 6: Open Your First Pull Request</summary>
<p><strong>Chapter:</strong> Ch06 | <strong>Evidence:</strong> Comment</p>
<p>A pull request is the conversation around a proposed change. It lets others review your branch before it becomes part of <code>main</code>. This challenge connects your branch, your issue, and your explanation into one contribution.</p>
<p><strong>What to do:</strong></p>
<ul>
<li>Go to Pull requests > New pull request</li>
<li>Set the base branch to <code>main</code> and the compare branch to <code>learn/YOUR-USERNAME</code></li>
<li>Write a clear title and include <code>Closes #XX</code> in the description</li>
</ul>
<p><strong>Evidence to post:</strong> Link to the pull request and name the issue it closes.</p>
<p>The <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-06-first-pr.md">Challenge 6 solution reference</a> shows how the title, body, and closing keyword work together.</p>
</details>
<details>
<summary>Challenge 7: Survive a Merge Conflict</summary>
<p><strong>Chapter:</strong> Ch07 | <strong>Evidence:</strong> Comment | <strong>Autograded</strong></p>
<p>Merge conflicts happen when Git cannot safely combine two edits by itself. The point of this challenge is to read the conflict markers calmly, choose the final wording, delete the marker lines, and prove the file is clean.</p>
<p><strong>What to do:</strong></p>
<ul>
<li>Wait for the facilitator to trigger the conflict</li>
<li>Find the marker lines: <code><<<<<<<</code>, <code>=======</code>, and <code>>>>>>>></code></li>
<li>Decide which content to keep, or combine both sides into one clear version</li>
<li>Delete all marker lines and commit the resolution</li>
</ul>
<p><strong>Evidence to post:</strong> Explain which content you kept and why. The autograder checks that no conflict markers remain.</p>
<p>The <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-07-merge-conflict.md">Challenge 7 solution reference</a> is useful if the marker structure still feels unfamiliar.</p>
</details>
<details>
<summary>Challenge 8: The Culture Layer</summary>
<p><strong>Chapter:</strong> Ch08 | <strong>Evidence:</strong> Comment</p>
<p>Technical work lands better when the communication is respectful and specific. This reflection challenge asks you to name the collaboration habits you want to practice before you move deeper into reviews and capstone work.</p>
<p><strong>What to do:</strong></p>
<ul>
<li>Answer the reflection prompt in your challenge issue</li>
<li>Add or recommend a label for an open issue, if the issue asks for triage practice</li>
<li>Leave a comment explaining the reasoning behind your communication or triage choice</li>
</ul>
<p><strong>Evidence to post:</strong> Write three concrete collaboration behaviors you will use in the rest of the workshop.</p>
<p>The <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-08-culture.md">Challenge 8 solution reference</a> gives examples of specific, actionable reflection language.</p>
</details>
<details>
<summary>Challenge 9: Merge Day</summary>
<p><strong>Chapter:</strong> Ch10 | <strong>Evidence:</strong> Comment</p>
<p>Merge Day closes the Day 1 loop. You verify that your pull request is ready, merge it when approved, confirm the change landed on <code>main</code>, and notice how the linked issue closes.</p>
<p><strong>What to do:</strong></p>
<ul>
<li>Verify your PR has no conflicts and a meaningful commit message</li>
<li>Merge your PR, or wait for a facilitator to approve and merge it</li>
<li>Confirm your changes appear on the <code>main</code> branch</li>
<li>Check that the linked issue closed automatically</li>
</ul>
<p><strong>Evidence to post:</strong> Share the merged PR link and the issue number that closed.</p>
<p>Before you close the issue, answer the four <strong>Confidence Check</strong> reflection questions from <a href="10-notifications-and-day-1-close.html#confidence-check">Chapter 10</a> in a comment on your Challenge 9 issue. There are no wrong answers - this is for you.</p>
<p>Before moving on, scan the <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-09-merge-day.md">Challenge 9 solution reference</a> to make sure you caught both the merge and verification steps.</p>
</details>
<h2 id="day-2-you-can-build-this-challenges-10-16">Day 2: You Can Build This (Challenges 10-16)</h2>
<details>
<summary>Challenge 10: Go Local</summary>
<p><strong>Chapters:</strong> Ch11-14 | <strong>Evidence:</strong> Comment | <strong>Autograded</strong></p>
<p>Day 2 moves the same contribution workflow onto your computer. You clone your own Learning Room repository, create a branch locally, edit <code>README.md</code>, commit, and push the branch back to GitHub.</p>
<p><strong>CLI best practices for this challenge:</strong></p>
<ul>
<li>Run <code>git status</code> before and after each step.</li>
<li>Confirm branch context with <code>git branch --show-current</code>.</li>
<li>Verify push destination with <code>git remote -v</code>.</li>
<li>Use <code>gh pr create</code> only after confirming the branch and linked issue text.</li>
</ul>
<p><strong>What to do:</strong></p>
<ul>
<li>Clone your own Learning Room repository (copy the HTTPS URL from the green <strong>Code</strong> button on its main page) with VS Code, GitHub Desktop, or the command line</li>
<li>Create a branch named <code>fix/YOUR-USERNAME</code></li>
<li>Edit <code>README.md</code></li>
<li>Commit and push the branch to GitHub</li>
</ul>
<p><strong>Evidence to post:</strong> Share your branch name and a short note about how you confirmed the push reached GitHub. The autograder verifies a commit on a non-default branch.</p>
<p>The <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-10-go-local.md">Challenge 10 solution reference</a> shows the local workflow as one complete loop.</p>
</details>
<details>
<summary>Challenge 11: Open a Day 2 PR</summary>
<p><strong>Chapters:</strong> Ch14-15 | <strong>Evidence:</strong> Comment</p>
<p>This challenge proves that the pull request pattern is the same whether the edit started in the browser or on your computer. You push a local branch to your Learning Room repository, open a PR, and explain the change for reviewers.</p>
<p><strong>CLI best practices for this challenge:</strong></p>
<ul>
<li>Build the PR body in clear plain text first, including <code>Closes #XX</code>.</li>
<li>Validate PR metadata after creation with <code>gh pr view</code>.</li>
<li>Check review/check status with <code>gh pr checks</code> before requesting review.</li>
</ul>
<p><strong>What to do:</strong></p>
<ul>
<li>Open a PR from <code>fix/YOUR-USERNAME</code> to <code>main</code></li>
<li>Write a title and description that describe your <code>README.md</code> change clearly</li>
<li>Notice the familiar shape: branch, compare, title, body, submit</li>
</ul>
<p><strong>Evidence to post:</strong> Link to the PR and identify what changed between the branch and <code>main</code>.</p>
<p>Use the <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-11-day2-pr.md">Challenge 11 solution reference</a> to compare the local-to-GitHub handoff.</p>
</details>
<details>
<summary>Challenge 12: Review Like a Pro</summary>
<p><strong>Chapter:</strong> Ch15 | <strong>Evidence:</strong> Comment</p>
<p>Review is where a contribution becomes stronger. Your job is to read a classmate's pull request, leave comments that are specific and kind, and submit a review verdict that matches what you found.</p>
<p><strong>What to do:</strong></p>
<ul>
<li>Open your buddy's PR or a facilitator-provided peer simulation PR</li>
<li>Go to Files changed and read the diff</li>
<li>Leave at least two inline comments: one naming something effective and one suggesting an improvement</li>
<li>Use Suggest changes for at least one comment, if the interface supports it</li>
<li>Submit your review with Approve, Request changes, or Comment</li>
</ul>
<p><strong>Evidence to post:</strong> Link to the review or describe where you left your comments.</p>
<p>The <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-12-review.md">Challenge 12 solution reference</a> models feedback that teaches without taking over the author's work.</p>
</details>
<details>
<summary>Challenge 13: AI as Your Copilot</summary>
<p><strong>Chapter:</strong> Ch16 | <strong>Evidence:</strong> Comment</p>
<p>Copilot can help draft and improve, but you remain responsible for the final result. This challenge asks you to use Copilot as a collaborator, then evaluate what it suggested before accepting anything.</p>
<p><strong>What to do:</strong></p>
<ul>
<li>Ask Copilot to improve a documentation file</li>
<li>Apply the trust, verify, reject framework to each suggestion</li>
<li>Keep notes on what you accepted, modified, and rejected</li>
</ul>
<p><strong>Evidence to post:</strong> Share the prompt you used and one example of a suggestion you changed or rejected.</p>
<p>The <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-13-copilot.md">Challenge 13 solution reference</a> shows how to document human judgment around AI output.</p>
</details>
<details>
<summary>Challenge 14: Template Remix</summary>
<p><strong>Chapter:</strong> Ch17 | <strong>Evidence:</strong> Comment | <strong>Autograded</strong></p>
<p>Issue templates help contributors give maintainers the information they need on the first try. In this challenge, you create a small YAML issue form and verify that it has the required fields.</p>
<p><strong>What to do:</strong></p>
<ul>
<li>Study <code>docs/samples/challenge-14-registration-remix-example.yml</code></li>
<li>Create a new YAML template in <code>.github/ISSUE_TEMPLATE/</code></li>
<li>Include <code>name</code>, <code>description</code>, <code>title</code>, and at least one form field</li>
<li>Commit and push the template</li>
</ul>
<p><strong>Evidence to post:</strong> Link to the template change or PR. The autograder verifies that the YAML template exists and includes required metadata.</p>
<p>The <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-14-template.md">Challenge 14 solution reference</a> can help you check both syntax and contributor usefulness.</p>
</details>
<details>
<summary>Challenge 15: Meet the Agents</summary>
<p><strong>Chapter:</strong> Ch19 | <strong>Evidence:</strong> Comment</p>
<p>Accessibility agents are not magic helpers. They are structured instructions, responsibilities, and guardrails. This challenge asks you to inspect real agents before you build or improve one.</p>
<p><strong>What to do:</strong></p>
<ul>
<li>Browse the <a href="https://github.com/Community-Access/accessibility-agents">Community Access Accessibility Agents repository</a></li>
<li>Find and name at least three different agents</li>
<li>Run or inspect one agent and describe what happened</li>
<li>Read one <code>.agent.md</code> file and identify its purpose and guardrails</li>
</ul>
<p><strong>Evidence to post:</strong> Name the agents you found and explain one guardrail that protects learners or users.</p>
<p>The <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-15-agents.md">Challenge 15 solution reference</a> shows how to turn exploration into a useful agent note.</p>
</details>
<details>
<summary>Challenge 16: Capstone Project</summary>
<p><strong>Chapters:</strong> Ch18, Ch20 | <strong>Evidence:</strong> Comment | <strong>Autograded</strong></p>
<p>The capstone is where you choose a real repository and prepare an impactful agentic contribution. Accessibility Agents is the default path, GLOW is a strong document-accessibility path, and another project is valid when your contribution would genuinely help that repository. The important part is not a flashy idea. The important part is a clear purpose, useful responsibilities, and boundaries that keep the work safe and honest.</p>
<p><strong>What to do:</strong></p>
<ol>
<li>Choose your target repository: <a href="https://github.com/Community-Access/accessibility-agents">Accessibility Agents</a>, <a href="https://github.com/Community-Access/glow">GLOW</a>, or another project you can explain.</li>
<li>Write a one-sentence mission statement for the contribution.</li>
<li>Create or improve an agent, prompt, instruction file, skill, workflow, or documentation page.</li>
<li>Include responsibilities and guardrails when the contribution involves an agent or automation.</li>
<li>Push and open a pull request, or prepare a review-ready branch, issue, or contribution plan if you do not have access.</li>
<li>Review a classmate's capstone PR when one is available.</li>
</ol>
<p>Use the <a href="https://github.com/Community-Access/git-going-with-github/blob/main/learning-room/docs/samples/agent-file-template.md">agent file template</a> and <a href="https://github.com/Community-Access/git-going-with-github/blob/main/learning-room/docs/samples/fork-workflow-checklist.md">fork workflow checklist</a> for structure.</p>
<p><strong>Evidence to post:</strong> Link to your capstone PR, branch, draft issue, or contribution plan. Include the repository you chose, the mission statement, what you changed or proposed, how you tested it, and the responsibilities and guardrails that make it safe.</p>
<p>The <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-16-capstone.md">Challenge 16 solution reference</a> shows a complete agent example with responsibilities and guardrails.</p>
</details>
<h2 id="bonus-challenges">Bonus Challenges</h2>
<p>Bonus challenges are optional. They unlock immediately after Challenge 15, at the same time as Challenge 16. Students can choose bonus work, capstone work, or both based on time, interest, and facilitator guidance.</p>
<details>
<summary>Bonus A: Improve an Existing Agent</summary>
<p>Choose an existing agent, identify a focused improvement, and open a PR that explains why the change matters.</p>
<p>Compare your plan with the <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-bonus-a.md">Bonus A solution reference</a>.</p>
</details>
<details>
<summary>Bonus B: Document Your Journey</summary>
<p>Write a structured reflection about what you learned, what surprised you, and what you want to keep practicing. Use accessible Markdown so another person can read it comfortably.</p>
<p>The <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-bonus-b.md">Bonus B solution reference</a> offers a reflection structure if you need a starting shape.</p>
</details>
<details>
<summary>Bonus C: Create a Group Challenge</summary>
<p>Design a collaborative challenge for 3-5 students. A good group challenge names the shared goal, the separate roles, the evidence, and how the group knows it is finished.</p>
<p>Review the <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-bonus-c.md">Bonus C solution reference</a> for one way to describe group work clearly.</p>
</details>
<details>
<summary>Bonus D: Notification Mastery</summary>
<p>Configure GitHub notifications so you can find mentions, reviews, and assignments without drowning in every update.</p>
<p>The <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-bonus-d.md">Bonus D solution reference</a> shows how to describe a personal notification strategy.</p>
</details>
<details>
<summary>Bonus E: Explore Git History Visually</summary>
<p>Use GitHub Desktop or GitHub.com to explore repository history. The goal is to explain what changed over time, not merely to find a graph or timeline.</p>
<p>The <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/solution-bonus-e.md">Bonus E solution reference</a> walks through one history-reading approach.</p>
</details>
<h2 id="skills-inspired-optional-scenarios">Skills-Inspired Optional Scenarios</h2>
<p>For advanced students who finish early, use the curated optional scenarios in <a href="https://github.com/Community-Access/git-going-with-github/blob/main/learning-room/docs/skills-bonus-scenarios.md">Learning Room skills bonus scenarios</a>.</p>
<p>These scenarios adapt selected GitHub Skills exercises into this workshop environment without changing the official 21-challenge progression.</p>
<h2 id="if-you-get-stuck">If You Get Stuck</h2>
<p>Every challenge issue includes an "If you get stuck" section with common problems and recovery paths. Start there, then use these supports:</p>
<ul>
<li>Ask your buddy for help</li>
<li>Ask your facilitator</li>
<li>Read the relevant chapter in the <a href="https://github.com/Community-Access/git-going-with-github/tree/main/docs">Git Going with GitHub curriculum</a></li>
<li>Check the <a href="https://github.com/Community-Access/git-going-with-github/tree/main/docs/solutions">solution reference directory</a></li>
<li>Use the <a href="https://github.com/Community-Access/git-going-with-github/blob/main/docs/solutions/">Learning Room solutions index</a> for quick challenge-by-challenge references</li>
</ul>
<p>When you ask for help, include what you were trying to do, where you were in the repository, what happened, and what you expected. That gives your buddy, facilitator, or bot enough context to help you quickly.</p>
<h2 id="authoritative-sources">Authoritative Sources</h2>
<p>Use these official references when you need the current source of truth for facts in this chapter.</p>
<ul>
<li><a href="https://docs.github.com/en">GitHub Docs, home</a></li>
<li><a href="https://github.blog/changelog/">GitHub Changelog</a></li>
<li><a href="https://docs.github.com/en/get-started/using-git/about-git">About Git</a></li>
<li><a href="https://docs.github.com/en/get-started/using-github/github-flow">GitHub flow</a></li>
<li><a href="https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests">About pull requests</a></li>
<li><a href="https://docs.github.com/en/issues/tracking-your-work-with-issues/about-issues">About issues</a></li>
<li><a href="https://docs.github.com/en/get-started/exploring-projects-on-github/contributing-to-a-project">Contributing to a project</a></li>
</ul>
<h3 id="section-level-source-map">Section-Level Source Map</h3>
<p>Use this map to verify facts for each major section in this file.</p>
<ul>
<li><strong>How Challenges Work:</strong> <a href="https://docs.github.com/en">GitHub Docs, home</a>, <a href="https://github.blog/changelog/">GitHub Changelog</a>, <a href="https://docs.github.com/en/get-started/using-git/about-git">About Git</a>, <a href="https://docs.github.com/en/get-started/using-github/github-flow">GitHub flow</a>, <a href="https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests">About pull requests</a></li>
<li><strong>Day 1: You Belong Here (Challenges 1-9):</strong> <a href="https://docs.github.com/en">GitHub Docs, home</a>, <a href="https://github.blog/changelog/">GitHub Changelog</a>, <a href="https://docs.github.com/en/get-started/using-git/about-git">About Git</a>, <a href="https://docs.github.com/en/get-started/using-github/github-flow">GitHub flow</a>, <a href="https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests">About pull requests</a></li>
<li><strong>Day 2: You Can Build This (Challenges 10-16):</strong> <a href="https://docs.github.com/en">GitHub Docs, home</a>, <a href="https://github.blog/changelog/">GitHub Changelog</a>, <a href="https://docs.github.com/en/get-started/using-git/about-git">About Git</a>, <a href="https://docs.github.com/en/get-started/using-github/github-flow">GitHub flow</a>, <a href="https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests">About pull requests</a></li>
<li><strong>Bonus Challenges:</strong> <a href="https://docs.github.com/en">GitHub Docs, home</a>, <a href="https://github.blog/changelog/">GitHub Changelog</a>, <a href="https://docs.github.com/en/get-started/using-git/about-git">About Git</a>, <a href="https://docs.github.com/en/get-started/using-github/github-flow">GitHub flow</a>, <a href="https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests">About pull requests</a></li>
<li><strong>Skills-Inspired Optional Scenarios:</strong> <a href="https://docs.github.com/en">GitHub Docs, home</a>, <a href="https://github.blog/changelog/">GitHub Changelog</a>, <a href="https://docs.github.com/en/get-started/using-git/about-git">About Git</a>, <a href="https://docs.github.com/en/get-started/using-github/github-flow">GitHub flow</a>, <a href="https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests">About pull requests</a></li>
<li><strong>If You Get Stuck:</strong> <a href="https://docs.github.com/en">GitHub Docs, home</a>, <a href="https://github.blog/changelog/">GitHub Changelog</a>, <a href="https://docs.github.com/en/get-started/using-git/about-git">About Git</a>, <a href="https://docs.github.com/en/get-started/using-github/github-flow">GitHub flow</a>, <a href="https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests">About pull requests</a></li>
</ul>
</div>
<nav class="progression-nav" aria-label="Page progression">
<a class="progression-link progression-prev" href="../docs/get-going.html" rel="prev"><span class="progression-label">Previous</span><span class="progression-title">Get Going with GitHub</span></a>
<a class="progression-link progression-next" href="../docs/00-pre-workshop-setup.html" rel="next"><span class="progression-label">Next</span><span class="progression-title">Pre-Workshop Setup - GIT Going with GitHub</span></a>
</nav>
</main>
</div>
<footer role="contentinfo" class="site-footer">
<p><strong>GIT Going with GitHub</strong> - A workshop by <a href="https://community-access.org">Community Access</a></p>
<p><a href="https://github.com/community-access/git-going-with-github">View on GitHub</a> · <a href="https://community-access.org">community-access.org</a></p>
</footer>
<script>
(function() {
var key = 'gggLastVisitedPath';
var currentPath = window.location.pathname || '';
try {
if (currentPath) {
localStorage.setItem(key, currentPath);
}
} catch (e) {}
var resumeLink = document.getElementById('resume-link');
if (!resumeLink) return;
try {
var savedPath = localStorage.getItem(key);
if (savedPath && savedPath !== currentPath) {
resumeLink.hidden = false;
resumeLink.setAttribute('href', savedPath);
}
} catch (e) {}
})();
</script>
</body>
</html>