Git: GitHub Issues and Pull Requests
(→Directions:) |
(→Directions:) |
||
Line 20: | Line 20: | ||
=== Directions: === | === Directions: === | ||
− | Step 1. Create an account | + | '''Step 1. Create an account''' |
+ | |||
If you do not already have an account, create one at github.com. | 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/ | 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 | + | '''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. | 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 | + | '''Step 3. Claim an issue to work on''' |
− | + | ||
− | Is there a way in github to assign this to people? | + | 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! | 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 | + | '''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. | Make changes to the code for your issue in your local environment. | ||
− | This | + | 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. | After modifying the code, commit your changes locally and then push them to your fork in GitHub. | ||
− | Step 6. Submit a Pull Request | + | '''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. | 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. | 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 | + | '''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. | 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 | + | Only when your PR is merged can you consider this step "done," so don't celebrate just yet! |
=== Deliverables: === | === Deliverables: === |
Revision as of 19:55, 15 August 2016
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