Interactive Visualization with Git
(pre-req updated) |
(→Suggestions to Open Source Mentors) |
||
(35 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
__NOTOC__ | __NOTOC__ | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | {{Learning Activity Overview | |
− | + | |title= | |
− | * Create a | + | Git: Interactive Visualization |
− | * | + | |overview= |
+ | Students learn from an interactive visual git simulator / game. This activity cover both local (on your laptop) and remote (internet-based code repository) Git functionality. | ||
+ | |prerequisites= | ||
+ | [[Intro to GitHub (Activity)]] and [[Work Locally with Git from the Command Line (Activity)]] or an introductory understanding of what SCM is about, and basic git commands. | ||
+ | |objectives= | ||
+ | * Create and checkout a branch. | ||
+ | * Create and checkout a tag. | ||
* Merge a branch into another. | * Merge a branch into another. | ||
* Rebase a branch onto another. | * Rebase a branch onto another. | ||
Line 21: | Line 18: | ||
* Detach and move around HEAD. | * Detach and move around HEAD. | ||
* Explain the difference between a branch, a tag, and HEAD. | * Explain the difference between a branch, a tag, and HEAD. | ||
+ | * Clone a remote repository. | ||
+ | * Fetch changes from a remote repository. | ||
+ | * Merge changes from a remote repository. | ||
+ | * Rebase changes from a remote repository. | ||
+ | * Describe the difference between _rebase_ and _merge_. | ||
+ | * Push changes into a remote repository. | ||
+ | * Describe the relationship between `git fetch`, `git merge`, and `git pull` | ||
+ | * Describe the relationship between `git fetch` and `git push`. | ||
+ | * Delete a remote branch. | ||
+ | * Push changes into a remote repository after remote history has diverged. | ||
+ | |process skills= | ||
+ | }} | ||
− | + | === Background === | |
− | + | ''Is there background reading material?'' | |
+ | * All material is provided in this assignment, though references below may be useful: | ||
+ | ** http://git-scm.com/doc | ||
+ | ** [[Intro to GitHub (Activity)]] | ||
+ | ** [[Work Locally with Git from the Command Line (Activity)]] | ||
+ | ''What is the rational for this activity?'' | ||
+ | * Getting familiar with git from the command line is not easy. This activity makes it a game! | ||
+ | === Directions === | ||
− | |||
* Go to tutorial at: http://pcottle.github.io/learnGitBranching/ | * Go to tutorial at: http://pcottle.github.io/learnGitBranching/ | ||
− | * Complete all activities under the ''' | + | * Complete all activities under the <u>'''Main'''</u> and <u>'''Remote'''</u> tabs |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
+ | [[File:LocalGit.png|600px]] | ||
− | + | {{Learning Activity Info | |
− | + | |acm unit= | |
− | + | SE - Software Engineering / SE Tools and Environments | |
− | + | |acm topic= | |
− | + | Software configuration management and version control | |
− | + | |difficulty= | |
− | + | Medium, as the advanced commands become more difficult to follow. | |
− | + | |time= | |
− | + | 2-4 hrs | |
− | + | |environment= | |
− | + | * Access to Internet/Web and web browser | |
− | + | * Github account (or any online Git hosting) | |
− | + | |author= | |
− | + | Stoney Jackson, Nick Yeates | |
− | + | |source= | |
− | + | http://pcottle.github.io/learnGitBranching/ | |
− | + | |license= | |
− | | | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | | | + | |
− | + | ||
− | | | + | |
− | + | ||
− | + | ||
− | | | + | |
− | + | ||
The MIT License (MIT) | The MIT License (MIT) | ||
Copyright (c) 2012 Peter Cottle | Copyright (c) 2012 Peter Cottle | ||
− | + | }} | |
− | + | ||
− | === Suggestions | + | === Suggestions to Open Source Mentors === |
− | + | Suggestions for an open source community member who is working in conjunction with the instructor. | |
− | + | * Mentors might show what websites and resources (Stackoverflow, IRC, etc) they often utilize when they are stuck or something unexpected happens upon committing or branching. | |
− | + | ** What troubleshooting steps do they use in their head? | |
+ | ** Do they chat or talk to fellow project-members or work colleagues? | ||
− | |||
− | [[Category: Learning_Activity]] | + | [[Category:Learning_Activity]] |
[[Category:Communication_and_Tools]] | [[Category:Communication_and_Tools]] | ||
+ | [[Category:Git]] | ||
+ | [[Category:CS2]] | ||
+ | [[Category:Good Draft]] |
Latest revision as of 17:21, 8 March 2017
Title |
Git: Interactive Visualization |
---|---|
Overview |
Students learn from an interactive visual git simulator / game. This activity cover both local (on your laptop) and remote (internet-based code repository) Git functionality. |
Prerequisites |
Intro to GitHub (Activity) and Work Locally with Git from the Command Line (Activity) or an introductory understanding of what SCM is about, and basic git commands. |
Learning Objectives |
After successfully completing this activity, the learner should be able to:
|
Process Skills Practiced |
Background
Is there background reading material?
- All material is provided in this assignment, though references below may be useful:
What is the rational for this activity?
- Getting familiar with git from the command line is not easy. This activity makes it a game!
Directions
- Go to tutorial at: http://pcottle.github.io/learnGitBranching/
- Complete all activities under the Main and Remote tabs
ACM BoK Area & Unit(s) |
SE - Software Engineering / SE Tools and Environments |
---|---|
ACM BoK Topic(s) |
Software configuration management and version control |
Difficulty |
Medium, as the advanced commands become more difficult to follow. |
Estimated Time to Complete |
2-4 hrs |
Environment / Materials |
|
Author(s) |
Stoney Jackson, Nick Yeates |
Source | |
License |
The MIT License (MIT) Copyright (c) 2012 Peter Cottle |
Suggestions to Open Source Mentors
Suggestions for an open source community member who is working in conjunction with the instructor.
- Mentors might show what websites and resources (Stackoverflow, IRC, etc) they often utilize when they are stuck or something unexpected happens upon committing or branching.
- What troubleshooting steps do they use in their head?
- Do they chat or talk to fellow project-members or work colleagues?