├── Module 1 ├── assets │ ├── issue_one.png │ ├── issue_two.png │ ├── issue_three.png │ └── visualize_git.png ├── Module 1.3 Assignment.md ├── Module 1.4 Assignment.md ├── README.md ├── Module 1.1 Assignment.md └── Module 1.2 Assignment.md ├── Module 2 ├── assets │ └── clone_one.png ├── Module 2.3 Assignment.md ├── Module 2.4 Assignment.md ├── Module 2.2 Assignment.md ├── README.md └── Module 2.1 Assignment.md ├── Module 4 ├── README.md └── Module 4 Assignment.md ├── Module 3 ├── README.md └── Module 3.1 Assignment.md ├── LICENSE ├── AWS Cloud9 └── README.md └── README.md /Module 1/assets/issue_one.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Campus-Advisors/campus-advisor-training-kunal-kushwaha/HEAD/Module 1/assets/issue_one.png -------------------------------------------------------------------------------- /Module 1/assets/issue_two.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Campus-Advisors/campus-advisor-training-kunal-kushwaha/HEAD/Module 1/assets/issue_two.png -------------------------------------------------------------------------------- /Module 2/assets/clone_one.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Campus-Advisors/campus-advisor-training-kunal-kushwaha/HEAD/Module 2/assets/clone_one.png -------------------------------------------------------------------------------- /Module 1/assets/issue_three.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Campus-Advisors/campus-advisor-training-kunal-kushwaha/HEAD/Module 1/assets/issue_three.png -------------------------------------------------------------------------------- /Module 1/assets/visualize_git.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Campus-Advisors/campus-advisor-training-kunal-kushwaha/HEAD/Module 1/assets/visualize_git.png -------------------------------------------------------------------------------- /Module 4/README.md: -------------------------------------------------------------------------------- 1 | # Welcome to Module 4: GitHub Education 2 | 3 | In this module you will be introduced to GitHub Education and some of the opportunities we make available for students. 4 | 5 | ## Lessons 6 | 7 | **All assignment files can be found at the top of the page.** 8 | 9 | ### Module 4: 10 | 11 | [:tv: Module 4 Video](https://youtu.be/ijtovaZpPWY) 12 | 13 | :notebook: Module 4 Assignment 14 | -------------------------------------------------------------------------------- /Module 4/Module 4 Assignment.md: -------------------------------------------------------------------------------- 1 | # Module 4 Assignment 2 | 3 | Please answer the following questions on the GitHub Education Community forum here: 4 | 5 | https://education.github.community/t/module-4-exercise-1-student-programs/26002?u=ericdrosado 6 | 7 | 1. Describe the existing technical student communities on your campus. Who is served? Where are there gaps? 8 | 2. Choose one GitHub Education program. How could it support your on-campus student communities? 9 | 3. What would you need to do in order to support the growth of student tech communities on campus? 10 | 11 | Please take a screenshot of your post and upload your screenshot to a new Issue titled `Module 4 Assignment`. 12 | -------------------------------------------------------------------------------- /Module 1/Module 1.3 Assignment.md: -------------------------------------------------------------------------------- 1 | # Module 1.3 Assignment 2 | 3 | Now that you have learned more about Git, on the command line I would like you to do the following: 4 | 5 | - [ ] Create a file called `campus_advisor.txt` 6 | - [ ] Write "Hello Campus Advisors!" in `campus_advisor.txt` and save your changes 7 | - [ ] Show the differences between your _Working Directory_ and _Staging Area_ 8 | - [ ] Add `campus_advisor.txt` to your _Staging Area_ 9 | - [ ] Show the differences between your _Staging Area_ and your _Repository_ 10 | - [ ] Commit campus_advisor.txt to your repository 11 | 12 | Once you have completed these steps, take a screenshot of your command line, with the steps above, 13 | and upload your screenshot to a new Issue titled Module 1.3 Assignment. 14 | -------------------------------------------------------------------------------- /Module 3/README.md: -------------------------------------------------------------------------------- 1 | # Welcome to Module 3: GitHub Classroom 2 | 3 | In this module you will be introduced to GitHub Classroom. This module will cover: 4 | 5 | * Creating an Organization 6 | * Creating Classrooms and assignments 7 | * The student perspective in GitHub Classroom 8 | * Individual work in GitHub Classroom 9 | * Group work in GitHub Classroom 10 | 11 | ## Lessons 12 | 13 | **All assignment files can be found at the top of the page.** 14 | 15 | ### Module 3.1: 16 | 17 | [:tv: Module 3.1 Video](https://youtu.be/JWyAp5EtaTU) 18 | 19 | :notebook: Complete Module 3.1 Assignment 20 | 21 | ### Module 3.2: 22 | 23 | [:tv: Module 3.2 Video](https://youtu.be/1oXv_hECP4s) 24 | 25 | ### Module 3.3: 26 | 27 | [:tv: Module 3.3 Video](https://youtu.be/zfHVLTGKSZ0) 28 | -------------------------------------------------------------------------------- /Module 3/Module 3.1 Assignment.md: -------------------------------------------------------------------------------- 1 | Apply for GitHub Education Benefits so you can use private repositories within your organization here: 2 | 3 | https://education.github.com/discount_requests/new 4 | 5 | Once verified you can easily upgrade any GitHub organization being used for academic purposes to [GitHub Team](https://github.com/pricing) with a single click. 6 | 7 | Simply visit your GitHub Education benefits page at https://education.github.com/benefits. 8 | 9 | Organizations you own will be listed near the bottom of the page: 10 | 11 | ![screenshot 2019-03-06 at 12 13 06 pm](https://user-images.githubusercontent.com/6764844/53907148-cd043880-4009-11e9-8449-be66e15e13e1.png) 12 | 13 | Click the **Upgrade** button next to the organization name to immediately upgrade it for free to GitHub Team. 14 | -------------------------------------------------------------------------------- /Module 2/Module 2.3 Assignment.md: -------------------------------------------------------------------------------- 1 | KUNAL KUSHWAHA 2 | # Module 2.3 Assignment 3 | 4 | Similar to the last exercise, you are going to make a change to this document, but you will make the change on the command line 5 | using your local repository. (Review Module 2.3 video for guidance) 6 | 7 | You will do the following: 8 | 1. Create a new branch called `assignment-edit` on the command line of your local repository on your computer. 9 | 2. Edit this document, `Module 2.3 Assignment.md` by adding your name on the first line. 10 | 3. Once you have edited `Module 2.3 Assignment.md`, push those changes to GitHub. 11 | 4. On GitHub create a Pull Request to merge these changes into the Master branch. 12 | 5. Delete the `assignment-edit` branch after the merge. 13 | 14 | Take a screenshot of your command line showing that you have committed and pushed your change 15 | and upload your screenshot to a new Issue titled `Module 2.3 Assignment`. 16 | -------------------------------------------------------------------------------- /Module 2/Module 2.4 Assignment.md: -------------------------------------------------------------------------------- 1 | # Module 2.4 Assignment 2 | 3 | In this assignment, you will be asked to resolve a merge conflict. We want to create a `README.md` that says `"Hello World"`. 4 | 5 | Copy and paste these commands on your command line and press `return`: 6 | 7 | ``` 8 | mkdir MergeConflict 9 | cd MergeConflict/ 10 | git init 11 | touch README.md 12 | echo "echo Hello" > README.md 13 | git add . 14 | git commit -m"first commit on master" 15 | git checkout -b new-branch 16 | echo "Hello World" > README.md 17 | git add . 18 | git commit -m"first commit on new-branch" 19 | git checkout master 20 | echo "Hola" > README.md 21 | git add . 22 | git commit -m"second commit on master" 23 | git merge new-branch 24 | ``` 25 | 26 | This "script" will create a merge conflict. Resolve the merge conflict so the text in `README.md` is `"Hello World"`. 27 | 28 | Take a screenshot of your command line showing that you have resolved the merge conflict 29 | and upload your screenshot to a new Issue titled `Module 2.4 Assignment`. 30 | -------------------------------------------------------------------------------- /Module 2/Module 2.2 Assignment.md: -------------------------------------------------------------------------------- 1 | KUNAL KUSHWAHA 2 | # Module 2.2 Assignment 3 | 4 | In this exercise you are going to make a change to this document on GitHub. As mentioned in the video, you can edit documents 5 | on GitHub by clicking the edit button and committing those changes. 6 | 7 | Please follow the steps below: 8 | 9 | 1. Create a new branch called `edit-module-assignment` on GitHub 10 | 2. On the `edit-module-assignment` branch, find this document, `Module 2.2 Assignment` and click the edit button. 11 | 3. In the editor for `Module 2.2 Assignment` add your name at the top of the document. 12 | 4. Scroll down and commit these changes. 13 | 5. On your local repository (on your computer) of the `Campus-Advisor_Training` repository, which we cloned in the last assignment, 14 | fetch and merge this change into your master branch on the command line. 15 | 16 | Take a screenshot of your command line showing that you have fetched and merged these changes 17 | and upload your screenshot to a new Issue titled `Module 2.2 Assignment`. 18 | -------------------------------------------------------------------------------- /Module 2/README.md: -------------------------------------------------------------------------------- 1 | # Welcome to Module 2: GitHub Basics 2 | 3 | In this module you will be introduced to GitHub. This module will cover: 4 | 5 | * Communicating with a remote 6 | * Git commands for working with a remote 7 | * Fetching and Pulling from GitHub 8 | * Git commands to request updates from GitHub 9 | * The GitHub Workflow 10 | * Resolving Merge Conflicts 11 | 12 | ## Lessons 13 | 14 | **All assignment files can be found at the top of the page.** 15 | 16 | ### Module 2.1: Pushing to a Remote 17 | 18 | [:tv: Module 2.1 Video](https://youtu.be/R2bLo-KiYlU) 19 | 20 | :notebook: Complete Module 2.1 Assignment 21 | 22 | ### Module 2.2: Fetching and Pulling from a Remote 23 | 24 | [:tv: Module 2.2 Video](https://youtu.be/gNaCC_8B1k0) 25 | 26 | :notebook: Complete Module 2.2 Assignment 27 | 28 | ### Module 2.3: GitHub Workflow 29 | 30 | [:tv: Module 2.3 Video](https://youtu.be/SoaAoATcUxU) 31 | 32 | :notebook: Complete Module 2.3 Assignment 33 | 34 | ### Module 2.4: Merge Conflicts 35 | 36 | [:tv: Module 2.4 Video](https://youtu.be/c1210JclnPw) 37 | 38 | :notebook: Complete Module 2.4 Assignment 39 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 Campus Advisors 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Module 1/Module 1.4 Assignment.md: -------------------------------------------------------------------------------- 1 | # Module 1.4 Assignment 2 | 3 | You were introduced to the tool [Visualizing Git](http://git-school.github.io/visualizing-git/) in this lesson. On your command 4 | line, I would like you replicate this visualization: 5 | 6 | ![](https://github.com/github-campus-advisors/Campus-Advisor-Training/blob/master/Module%201/assets/visualize_git.png) 7 | 8 | This will require you to create a new repository and to do four seperate commits. Note, there is more than one way to replicate 9 | this visualization on the command line. You are more than welcome to use [Visualizing Git](http://git-school.github.io/visualizing-git/) to help you. 10 | 11 | **Hint** 12 | You will have to initialize a new repository, make four commits total, add one new branch, and you will need to 13 | checkout onto the Master branch in the end to ensure `HEAD` is pointing to Master. 14 | 15 | Once you have determined the correct sequence of git commands, take a screenshot of your command line 16 | and upload your screenshot to a new Issue titled Module 1.4 Assignment. If your command line is long with commands, 17 | you are welcome to take multiple screenshots and upload them to the Issue. 18 | -------------------------------------------------------------------------------- /Module 1/README.md: -------------------------------------------------------------------------------- 1 | # Welcome to Module 1: Git Basics 2 | 3 | In this module you will be introduced to Git. This module will cover: 4 | 5 | * What is version control? 6 | * What is Distributed Version Control? 7 | * What is a Git repository? 8 | * Basic Bash and Git commands 9 | * The Git workflow and the Three State Model 10 | * How to be selective with Git commits 11 | * How does Git save commits 12 | * How to branch and merge your branches 13 | 14 | ## Lessons 15 | 16 | **All assignment files can be found at the top of the page.** 17 | 18 | ### Module 1.1: Meet Git 19 | 20 | [:tv: Module 1.1 Video](https://youtu.be/uWsXEmaM3PA) 21 | 22 | :notebook: Complete Module 1.1 Assignment 23 | 24 | ### Module 1.2: The Three State Model 25 | 26 | [:tv: Module 1.2 Video](https://youtu.be/yLLZdOIuCfg) 27 | 28 | :notebook: Complete Module 1.2 Assignment 29 | 30 | ### Module 1.3: Being Selective with Git 31 | 32 | [:tv: Module 1.3 Video](https://youtu.be/3zmolo8YRO8) 33 | 34 | :notebook: Complete Module 1.3 Assignment 35 | 36 | ### Module 1.4: Branches and Merging 37 | 38 | [:tv: Module 1.4 Video](https://youtu.be/2YDoQZ9nZ4g) 39 | 40 | :notebook: Complete Module 1.4 Assignment 41 | 42 | 43 | -------------------------------------------------------------------------------- /Module 1/Module 1.1 Assignment.md: -------------------------------------------------------------------------------- 1 | # Module 1.1 Assignment 2 | 3 | For a majority of your assignments you will create issues on GitHub. 4 | 5 | In order to create an issue you will travel to the tab marked as `Issues`: 6 | 7 | ![](https://github.com/github-campus-advisors/Campus-Advisor-Training/blob/master/Module%201/assets/issue_one.png) 8 | 9 | Once you click on that tab you will see all the current issues in this repository. At this point, no issues have been created. Let's create a new issue by clicking `New issue` 10 | 11 | ![](https://github.com/github-campus-advisors/Campus-Advisor-Training/blob/master/Module%201/assets/issue_two.png) 12 | 13 | Once you have created a new issue, you will be greeted by the screen below. Here you will provide 14 | * A title for your issue (Every title should be the name of the assignment, so in this case it is "Module 1.1 Assignment") 15 | * A body for your issue to write a response or upload a screenshot 16 | * A submission button 17 | 18 | ![](https://github.com/github-campus-advisors/Campus-Advisor-Training/blob/master/Module%201/assets/issue_three.png) 19 | 20 | For the Module 1.1 Assignment copy the question below and paste it into the body of the issue and answer it: 21 | 22 | `Given what you have learned about Git, why would you want to use Git in your classroom?` 23 | -------------------------------------------------------------------------------- /AWS Cloud9/README.md: -------------------------------------------------------------------------------- 1 | # Module 5 - Utilizing AWS Cloud9 in the Classroom 2 | In this lesson we are going to take an opportunity to explore AWS Educate and AWS Cloud9. Becoming an AWS Educate member provides a wide variety of benefits. The one benefit we will explore in this lesson is the ability to use the AWS Cloud9 IDE for free. Cloud9 is a cloud-based IDE, a place where you can write, run, and debug your code with just a browser. 3 | 4 | In this module you will signup for a free AWS Educate Account and explore how to provide your students access. Afterwards, we will dive into how to use GitHub Classroom alongside AWS Educate to expose your students to the industry tool, AWS Cloud9 IDE. 5 | 6 | 5.1 Join AWS Educate 7 | 8 | :tv: [Getting Started with AWS Educate](https://s3.amazonaws.com/awseducate-onboarding/Educator+Toolkit/Movies/Getting+Started+with+AWS+Educate.mp4) 9 | 10 | :notebook:[Create an AWS Educate account](https://aws.amazon.com/education/awseducate/) 11 | 12 | 5.2 Create an AWS Classroom 13 | 14 | :tv: [Getting Started with AWS Educate Classrooms](https://s3.amazonaws.com/awseducate-onboarding/Educator+Toolkit/Movies/AWS+Educate+Educator+Classrooms+Overview.mp4) 15 | 16 | 5.3 The Student Perspective: Assigning an AWS Cloud9 Assignment 17 | 18 | :tv: [The Student Perspective: Assigning an AWS Cloud9 Assignment](https://youtu.be/bBPRD8ytWcI) 19 | -------------------------------------------------------------------------------- /Module 1/Module 1.2 Assignment.md: -------------------------------------------------------------------------------- 1 | For the Module 1.2 Assignment, you will open up your command line and complete the following: 2 | 3 | - [ ] Create a directory using the command `mkdir` 4 | - [ ] In the directory you created initialize Git using `git init` 5 | - [ ] Create a README.md file in your directory using the `touch` command 6 | - [ ] Make sure README.md is in your _Working Directory_ by checking your status with `git status` 7 | - [ ] Move README.md from the _Working Directory_ to the _Staging Area_ by using `git add` 8 | - [ ] Make sure README.md is in your _Staging Area_ by checking your status with `git status` 9 | - [ ] Commit README.md to your repository using `git commit` 10 | - [ ] Make sure your _Working Directory_ and _Staging Area_ are clean with `git status` 11 | - [ ] Make sure your commit has been logged into your repository by using `git log` 12 | 13 | Once you have completed these steps, take a screenshot of your command line, with the steps above, and upload your screenshot to a new `Issue` titled `Module 1.2 Assignment`. I have added the screenshot from the Module 1.1 Assignment for reference. 14 | 15 | ![](https://github.com/github-campus-advisors/Campus-Advisor-Training/blob/master/Module%201/assets/issue_three.png) 16 | 17 | In the body of the issue you can drag and drop your screenshot or search for it on your device. Once you have added the screenshot you can submit the issue and move to the next lesson. 18 | -------------------------------------------------------------------------------- /Module 2/Module 2.1 Assignment.md: -------------------------------------------------------------------------------- 1 | # Module 2.1 Assignment 2 | 3 | In this assignment you will create a remote on your computer with this repository. In [Module 2.1](https://youtu.be/R2bLo-KiYlU) 4 | you were given an introduction on how to create a remote from scratch, but what happens if you want to create a remote for a 5 | repository that already exists. Now, if a repository already exists, and it already has code that you want, 6 | you can actually copy it to your local machine using the command `git clone` followed by the Repository URL. 7 | 8 | Lets do this step by step: 9 | 10 | 1. First you need to find the repository URL in the root of the repository. You should see a button that says `Clone or Download`: 11 | ![](https://github.com/github-campus-advisors/Campus-Advisor-Training/blob/master/Module%202/assets/clone_one.png) 12 | Copy the URL and head over to the command line. 13 | 14 | 2. On the command line you want to type `git clone ` where you add the URL in the place of ``. 15 | You will notice that there is some network activity happening. 16 | 17 | 3. Once the network activity finishes, type `ls` and you will notice you have the repository on your local machine. You 18 | can `cd` into the repository and see all the files that are on GitHub are now on your local machine: 19 | 20 | Take a screenshot of your command line showing how you cloned this repository onto your local machine. Create an `Issue` with the title `Module 2.1 Assignment` and include the screenshot in the body of the issue. 21 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Welcome to Campus Advisor Training 2 | 3 | Welcome to Campus Advisor training. You will be presented with video lessons and asked to complete assignments for each video lesson. All of the videos and assignments can be found in this repository. You are welcome to navigate around this repository, or you are welcome to just follow the links like the one at the bottom of this README to help you progress through the training. 4 | 5 | In each module, you will find video lessons marked with this icon :tv: and assignments will be marked with this icon :notebook:. You can find your first video below: 6 | 7 | [:tv: Watch me before you begin](https://youtu.be/Ub8IMMMTfB8) 8 | 9 | ## This is your training 10 | 11 | It is beneficial that you take advantage of the resources presented to you, but I would also recommend that if you find instances where things can be improved, then please create an issue in the original repository [here](https://github.com/github-campus-advisors/Campus-Advisor-Training/issues). If you are not familiar with issues in GitHub, no worries, you will learn about them soon. 12 | 13 | ## To Get Started 14 | 15 | 1. Register for an account on [github.com](https://github.com/). 16 | 2. [Download, install and configure git](https://git-scm.com/). Windows users please install [Git for Windows](https://gitforwindows.org/). 17 | 3. If you are new to Git, GitHub, and the command-line, I recommend [downloading ATOM](https://atom.io/), a text editor, which is available for Mac, Linux, and Windows. I will be using ATOM in all of the modules. 18 | 19 | #### Mac and Linux Setup 20 | If you are using a Mac or Linux machine, I would recommend following these instructions to setup the ATOM command-line: 21 | - [ATOM command-line Instructions](https://youtu.be/h5xcw8_8gaE) 22 | 23 | #### Chromebook User Setup 24 | If you are using a Chromebook, great news! You can use ATOM to follow along with the videos with some easy instructions: 25 | - [Instructions and setup for ATOM for Chromebook Users](https://blog.atom.io/2018/10/02/running-atom-on-chome-os.html) 26 | - [ATOM command-line Instructions](https://youtu.be/h5xcw8_8gaE) 27 | 28 | #### Windows User Setup 29 | If you are using Windows, and new to the command-line, I would recommend following additional instructions to avoid using the default shell, known as "PowerShell," in ATOM since all of the examples in the modules will be using a Unix based shell: 30 | - [Instructions and setup for using ATOM in Windows](https://youtu.be/0aVAjhVZ9Ko) 31 | 32 | 4. Make sure to set Git with your name and email address using the following commands on the command-line with your name and email address: 33 | ``` 34 | $ git config --global user.name "FirstName LastName" 35 | $ git config --global user.email "email@example.com" 36 | ``` 37 | This is important because Git will use this information when you work on a project. 38 | 39 | ## Questions 40 | If you have any questions regarding setup or on any of the learning modules, I would recommend visiting the [GitHub Education Community](https://education.github.community/c/teachers/advisors) for assistance. 41 | 42 |
43 | 44 | ## To begin 45 | 46 | You will notice at the top of the page there are directories for each learning module. To begin, please click on Module 1 to start. 47 | 48 | ## When you are finished 49 | 50 | Once you have completed the mandatory Modules 1-4 you are welcome to apply to be a Certified Campus Advisor. Certified Campus advisors join a community of educator leaders who champion industry tools in their classroom. Campus Advisors join a collaborative network that allows them to learn from their peers, but also share what they are doing in their classrooms. Campus Advisors also receive professional development support from GitHub. 51 | 52 | [Become a Certified Campus Advisor](https://airtable.com/shr6ZHMoHOb9kBupY) 53 | --------------------------------------------------------------------------------