Participants, in teams of 2-3, work through a series of scenarios to learn how to contribute to open-source projects using a common workflow.
- Participants: 2+
- Each participant needs
- A computer with
- git installed and configured
- A plaintext editor
- A command-line interface
- A browser
- A working Internet connection with ports open for SSH, HTTPS, and HTTP
- A GitHub account
- A computer with
Participants must be able to:
- Local git repository operations:
- Stage changes
- Commit changes
- Check the status of the repository
- Command-line operations:
- Change working directory (cd)
- Filesystem operations:
- Create, rename, move, and delete directories and files
- Plaintext editor operations:
- Edit and save a file
Participants will be able to:
- Use a common workflow to contribute code to a project on GitHub
- Prepare a fork and local repository to contribute changes to upstream project on GitHub
- Fork a project on GitHub
- Clone a local repository from a remote repository
- Create a remote in local repository to a remote repository
- Prepare a branch to work on a feature or bug
- Create a local branch
- Push a local branch to a remote
- Issue a pull-request on GitHub
- Update repository with changes from upstream
- Fetch upstream changes into local repository
- Rebase feature branch onto upstream development branch
- Resolve conflicts
- Push changes to remote
- Force push changes to remote
- Squash commits
- Prepare a fork and local repository to contribute changes to upstream project on GitHub
- activity.md - Activity participants work through.
- presentation.pptx - Overview presentation of workflow.
- reference.md - Detailed description of the workflow.
- 10 min:
- Quickly presentation.pptx
- Form teams
- Hand out activity.md and reference.md, one hardcopy per team
- 50-70 min:
- Teams work through activity.md
(c) 2016 Darci Burdge and Stoney Jackson SOME RIGHTS RESERVED
This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/4.0/ .