Git: GitHub Issues and Pull Requests

From Foss2Serve
Revision as of 19:51, 15 August 2016 by Cmurphy (Talk | contribs)
Jump to: navigation, search
Title Name of the activity
Overview High level description of what the student will do
Prerequisite Knowledge What topics and tools does the student need to know prior to beginning this activity?
Learning Objectives What should the student be able to do after completing this activity?

Contents

Background:

Is there background reading material?

Are there other activities the student should have done first?

What is the rationale for this activity?

Include helpful hints to faculty here.

Directions:

Step 1. Create an account If you do not already have an account, create one at github.com.

Also be sure that you have git on your local computer or have GitHub Desktop: https://desktop.github.com/

Step 2. Fork and clone repo Make a fork of the repo at https://github.com/cis-upenn/fun-with-github into your account, then clone it onto your local computer.

Step 3. Claim an issue to work on Go to that repo’s “Issues” tab and find one that you would like to work on (some are easier than others!).

Is there a way in github to assign this to people?

To claim the issue as your own, add a comment indicating that you are working on it. Make sure you aren’t working on the same issue as someone else!

IMPORTANT NOTE! If you would like to communicate with another student or the instructor regarding the issue, you MUST use the IRC channel and you may NOT speak until the instructor has said it’s okay to do so!

Step 4. Make local changes as needed Make changes to the code for your issue in your local environment.

This shouldn’t take too long but as above, if you need to communicate with another student or the instructor, you MUST use the IRC channel.

Step 5. Commit/push your changes to your fork After modifying the code, commit your changes locally and then push them to your fork in GitHub.

Step 6. Submit a Pull Request Create a new Pull Request (PR) in the https://github.com/cis-upenn/fun-with-github repo from your fork.

Then add a comment in the Issue that you claimed, indicating that you have submitted a PR. Include a link to the PR.

Step 7. Wait patiently Patiently wait in GitHub to see if your PR is merged by one of the repo owners. You may also get a follow-up comment in your Issue, or a note in IRC.

Only when your PR is merged can you consider this step “done”, so don’t celebrate just yet!

Deliverables:

What will the student hand in?

Assessment:

How will the activity be graded?

How will learning will be measured?

Include sample assessment questions/rubrics.

Criteria Level 1 (fail) Level 2 (pass) Level 3 (good) Level 4 (exceptional)
Criterion 1...
Criterion 2...

Comments:

What should the instructor know before using this activity?

What are some likely difficulties that an instructor may encounter using this activity?

Additional Information:

ACM Knowledge Area/Knowledge Unit What ACM Computing Curricula 2013 knowledge area and units does this activity cover? ACM_Body_of_Knowledge
ACM Topic What specific topics are addressed? The Computing Curriucula 2013 provides a list of topics - https://www.acm.org/education/CS2013-final-report.pdf
Level of Difficulty Is this activity easy, medium or challenging?
Estimated Time to Completion How long should it take for the student to complete the activity?
Materials/Environment What does the student need? Internet access, IRC client, Git Hub account, LINUX machine, etc.?
Author(s) Who wrote this activity?
Source Is there another activity on which this activity is based? If so, please provide a link to the original resource.
License Under which license is this material made available? (http://creativecommons.org/licenses/)

Suggestions for Open Source Community:

Suggestions for an open source community member who is working in conjunction with the instructor.


This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License

CC license.png

Personal tools
Namespaces
Variants
Actions
Events
Learning Resources
HFOSS Projects
Evaluation
Navigation
Toolbox