If you are Familiar with GitHub

If you are familiar with Git and Github, you just need to read the following two sections. If you are not, start with the next section and come back here after you have github set.

CSE255-DSE230 repository

All class notebooks, including HW notebooks, will be available on the class github page:

https://github.com/ucsd-edx/CSE255-DSE230-2018

You can browse static versions of the notebook directly on the github site.

To have ‘live’ notebooks you can work on, clone the directory to your disk.

Pushing to github

It is okay to push your homework to GitHub. But you have to keep it in a private repository so that other people cannot get access to your code. Our plagiarism policy states that if two (or more) students are judged to have a copied piece of homework submissions, they will both (or all) have points deducted. It is therefor your responsibility both not to copy and to make sure nobody copied from you.

DSE230 students - you alredy have private github repositories set for you.

CSE255 students GitHub provides free private repositories for students via the Student Developer Pack program.

Setting up GitHub on your computer.

Installing Git

Install Git on your computer using the following directions:

Windows Users should also have Gnu On Windows installed:

Cloning the DSE230 GitHub Repository

1. Open the Terminal:

Ubuntu: Open the Terminal program by pressing Ctrl-Alt-t.

Mac OS X: Open the Terminal by clicking on the Spotlight magnifying glass at the top right of the screen, typing “Terminal” then clicking the Terminal icon.

Windows: Go to the Start menu/screen and select the Git Shell program. The Git Shell program may be stored in the GitHub, Inc folder in the Start menu/screen.

2. Type the commands in red to create a directory to store the clone of the DSE 230 Class GitHub Repository. You may store the class repository in a different directory if you prefer.

$ mkdir ~/Classes
$ cd ~/Classes

3. Type the command in red to clone the DSE230-notebooks Class GitHub Repository

$ git clone https://github.com/ucsd-edx/CSE255-DSE230.git

Generating SSH key for faster access

Setting up an SSH key is not necessary, but it is nice as it removes the need to enter ID and password each time you pull or push into a repository.

Ubuntu: Follow the instructions at: https://help.github.com/articles/generating-ssh-keys/#platform-linux

Mac OS X: Follow the instructions at: https://help.github.com/articles/generating-ssh-keys/#platform-mac

Windows: If you logged in to your GitHub account during the setup of GitHub Desktop then your SSH key has already been generated and added to GitHub. If you didn’t login to your GitHub account during setup then follow the directions at: https://help.github.com/desktop/guides/getting-started/authenticating-to-github/#platform-windows

TroubleShooting: Permission denied (publickey)

If you receive a Permission denied (publickey) error see the following: https://help.github.com/articles/error-permission-denied-publickey/

Mastering GitHub

You now have git and github set up. To use Github effectively you need to learn, at a minimum the following commands:

  • git add
  • git commit
  • git push
  • git pull

You can learn these basic commands, and much more here: Become a Git Guru: Atlassian Git Tutorial