refactor: rewrite the exercise with issue based flow - #55
Conversation
…o simulate merge conflict
…o simulate merge conflict fixed the issue with branch version
…n step included open pr as condition
Co-authored-by: Christopher W. Blake <chriswblake@github.com>
… issue based and also corrected outdated ui instrcutions
- Update GitHub organization references in README.md - Update GitHub organization references in .github/steps/x-review.md - Change all skills-dev URLs to skills organization
There was a problem hiding this comment.
Pull request overview
This PR migrates the "Resolve Merge Conflicts" exercise from the skills-dev organization to the skills organization and updates the exercise framework. While the PR description mentions updating organization references, this is actually a comprehensive rewrite of the exercise structure.
Changes:
- Complete rewrite of README.md with updated exercise format and
template_ownerset toskills - Migration from legacy workflow structure (steps 0-4) to new exercise-toolkit framework (steps 0-3)
- Addition of new step documentation files with improved instructional content
- Removal of legacy files (dependabot.yml, -step.txt)
Reviewed changes
Copilot reviewed 22 out of 22 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| README.md | Complete rewrite with modern exercise format, updated template_owner to skills, and simplified instructions |
| .github/workflows/0-start-exercise.yml | New workflow using skills/exercise-toolkit@v0.7.0 for exercise initialization |
| .github/workflows/1-step.yml | New workflow for step 1 progression using exercise-toolkit |
| .github/workflows/2-step.yml | New workflow for step 2 progression using exercise-toolkit |
| .github/workflows/3-step.yml | New workflow for final step and exercise completion using exercise-toolkit |
| .github/workflows/0-welcome.yml | Removed legacy workflow file |
| .github/workflows/1-create-a-pr.yml | Removed legacy workflow file |
| .github/workflows/2-resolve-a-merge-conflict.yml | Removed legacy workflow file |
| .github/workflows/3-create-your-own-conflict.yml | Removed legacy workflow file |
| .github/workflows/4-merge-your-pull-request.yml | Removed legacy workflow file |
| .github/steps/x-review.md | New completion/review content with links to other skills exercises |
| .github/steps/1-step.md | New step 1 instructions explaining merge conflicts with mermaid diagram |
| .github/steps/2-step.md | New step 2 instructions for resolving conflicts with detailed activity steps |
| .github/steps/3-step.md | New step 3 instructions for merging the pull request |
| .github/steps/0-welcome.md | Removed legacy step file |
| .github/steps/1-create-a-pr.md | Removed legacy step file |
| .github/steps/2-resolve-a-merge-conflict.md | Removed legacy step file |
| .github/steps/3-create-your-own-conflict.md | Removed legacy step file |
| .github/steps/4-merge-your-pull-request.md | Removed legacy step file |
| .github/steps/X-finish.md | Removed legacy step file |
| .github/steps/-step.txt | Removed legacy step tracking file |
| .github/dependabot.yml | Removed dependabot configuration |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
|
||
| 1. Accept the version from the base branch. | ||
| 1. Accept the version from the compare branch. | ||
| 1. Manually combined the changes from both branches. |
There was a problem hiding this comment.
There is a grammatical error in this line. The word "combined" should be "combine". It should read "Manually combine the changes from both branches" instead of "Manually combined the changes from both branches".
| 1. Manually combined the changes from both branches. | |
| 1. Manually combine the changes from both branches. |
|
|
||
| ### ⌨️ Activity: Create a pull request | ||
|
|
||
| To quickly practice, we already created the above scenario for you by making a new branch `my-resume` then modifying `resume.md` on both branches, which will will cause a conflict. Let's practice with it! |
There was a problem hiding this comment.
There is a typo in this line. The word "will" is duplicated. It should read "which will cause a conflict" instead of "which will will cause a conflict".
| To quickly practice, we already created the above scenario for you by making a new branch `my-resume` then modifying `resume.md` on both branches, which will will cause a conflict. Let's practice with it! | |
| To quickly practice, we already created the above scenario for you by making a new branch `my-resume` then modifying `resume.md` on both branches, which will cause a conflict. Let's practice with it! |
| </header> | ||
| - **Who is this for**: New developers, new Git and GitHub users | ||
| - **What you'll learn**: We'll introduce the tools for inspecting and resolving a merge conflict. | ||
| - **What you'll build**: You'll use a web editor to fix conflicting changes to Markdown file. |
There was a problem hiding this comment.
There is a grammatical error in this line. The article "a" is missing before "Markdown file". It should read "You'll use a web editor to fix conflicting changes to a Markdown file" instead of "to Markdown file".
| - **What you'll build**: You'll use a web editor to fix conflicting changes to Markdown file. | |
| - **What you'll build**: You'll use a web editor to fix conflicting changes to a Markdown file. |
|
|
||
| ## Welcome | ||
| 1. Learn the causes of a merge conflict. | ||
| 2. The tools for resolving a merge conflict. |
There was a problem hiding this comment.
This numbered list has inconsistent structure. Item 1 starts with "Learn the causes", item 2 starts with "The tools" (which is a noun phrase, not a verb phrase like item 1), and item 3 starts with "When and how". For consistency, item 2 should start with a verb. Consider changing "The tools for resolving a merge conflict" to "Learn the tools for resolving a merge conflict" or "Use the tools for resolving a merge conflict".
| 2. The tools for resolving a merge conflict. | |
| 2. Learn the tools for resolving a merge conflict. |
| Simply copy the exercise to your account, then give your favorite Octocat (Mona) **about 20 seconds** to prepare the first lesson, then **refresh the page**. | ||
|
|
||
| In this course, you will: | ||
| [](https://github.com/new?template_owner=skills&template_name=resolve-merge-conflicts&owner=%40me&name=skills-resolve-merge-conflicts&description=Exercise:+Resolve+Merge+Conflicts&visibility=public) |
There was a problem hiding this comment.
The PR description states this PR "updates all references from skills-dev organization to skills organization" and mentions updating repository links and the template_owner parameter. However, this PR appears to be a much more substantial change that includes:
- Complete rewrite of README.md (not just link updates)
- Deletion of old workflow files (0-welcome.yml, 1-create-a-pr.yml, 2-resolve-a-merge-conflict.yml, 3-create-your-own-conflict.yml, 4-merge-your-pull-request.yml)
- Addition of new workflow files (0-start-exercise.yml, 1-step.yml, 2-step.yml, 3-step.yml)
- Complete rewrite of step documentation files
- Deletion of dependabot.yml and -step.txt files
The PR description should be updated to accurately reflect the scope of these changes. This appears to be a migration to a new exercise framework/structure, not just an organization name update.
| >>>>>>> main | ||
| ``` | ||
|
|
||
| 1. After some inspection, we decide to keep the version from the compare branch. Remove the base branch version by deleting then content between `=======` and `>>>>>>> main`. |
There was a problem hiding this comment.
There is a typo in this line. The word "then" should be "the". It should read "Remove the base branch version by deleting the content between..." instead of "deleting then content between..."
| 1. After some inspection, we decide to keep the version from the compare branch. Remove the base branch version by deleting then content between `=======` and `>>>>>>> main`. | |
| 1. After some inspection, we decide to keep the version from the compare branch. Remove the base branch version by deleting the content between `=======` and `>>>>>>> main`. |
This pull request completely rewrites the flow and content for the "Resolve Merge Conflicts" GitHub Skills course. It removes the previous step files and workflows, replacing them with a more streamlined and user-friendly experience. The new approach uses clearer instructions, improved visuals, and a simplified workflow logic for managing the exercise steps and merge conflict simulation.
The most important changes are:
Course Content Overhaul:
Replaced all previous step markdown files (such as
1-create-a-pr.md,2-resolve-a-merge-conflict.md, etc.) with new, more concise and visually enhanced step files (1-step.md,2-step.md,3-step.md,x-review.md). The new content uses diagrams, clearer explanations, and step-by-step activities to improve learner experience. [1] [2] [3] [4] [5] [6] [7] [8] [9]Added a new review step (
x-review.md) to summarize and reinforce key concepts at the end of the course.Workflow and Automation Simplification:
0-welcome.yml,1-create-a-pr.yml) and replaced them with a single, more maintainable workflow (0-start-exercise.yml). This new workflow handles exercise initialization, simulates a merge conflict, and manages step progression in a simpler, more robust way. [1] [2] [3]Configuration Cleanup:
dependabot.ymlconfiguration, as well as obsolete step tracking files (-step.txt,0-welcome.md). [1] [2] [3]Overall, these changes modernize the course, making it more approachable for learners and easier to maintain for contributors.