Make software accessible
Timeline
SubTasks
From Geoscience Paper of the Future
    TypeM
    low
    ProgressM
    70%
    Start dateM
    3rd Apr 2015
    Target dateM
    18th Apr 2015
    Participants
    Expertise
    open science
    Legend: M Mandatory | States: Not defined, Valid, Inconsistent with parent


    What This Task Involves

    1. Understand how to use GitHub to make software accessible
    2. Create a GitHub account and contribute your project to GitHub

    Training Materials

    This training session was held on March 6, 2015:

    • Presentation -- to be posted
    • Step-by-step guide on setting up GitHub

    1. Pre-Requisites
    1.1 Download and install hub.github.com. You will need to install 'brew', and 'go' after.
    1.2 Install brew Untar anywhere and then symlink the brew command elsewhere.

    $ mkdir /usr/local/homebrew && curl -L https://github.com/Homebrew/homebrew/tarball/master | tar xz --strip 1 -C homebrew 
    $ cd /usr/local/bin 
    $ sudo ln -s /usr/local/homebrew/bin/brew brew 
    

    2. Brew Dependencies
    2.1 Install go $ brew install go add path to .cshrc and/or .bashrc:

    setenv GOPATH /usr/local/homebrew/Cellar/go/1.4.2/bin (csh) 
    export GOPATH=/usr/local/homebrew/Cellar/go/1.4.2/bin (bash)
    

    2.2 Install hub

    $ cd $HOME/src && git clone https://github.com/github/hub.git
    $ cd hub
    $ script/build 
    $ mv ./hub ~/bin # (make sure your PATH includes $HOME/bin)
    

    3.Git SSH Keys
    3.1 follow this guide to make sure that you have Git SSH keys: https://help.github.com/articles/generating-ssh-keys/ TL;DR version:
    a. ssh-keygen -t rsa -C "your_email@example.com”
    b. don’t use a passphrase (will be annoying if you later)
    c. grab the value out of $HOME/.ssh/id_rsa.pub and then go over to your Github account > Settings > SSH keys and paste the value of the id_rsa.pub file into the key setting.

    4. Create your project locally and then check in to Git
    4.1 $mkdir -p $HOME/src/<your project name> (Create your local project)
    4.2 $cd $HOME/src/<your project name> (Change the current working directory to your local project)
    4.3 Edit and add a README.md file.
    4.4 Edit and add a LICENSE.txt file (suggestion: Apache License, version 2)
    4.5 Add your pom.xml file and/or setup.py file and/or .PM file.
    4.6 Add your dependencies.
    4.7 $git init (to initialize your working repo in this dir)
    4.8 $git add * (to add all the uncommitted files)
    4.9 $git commit -m 'Initial commit'
    4.10 $git create
    4.11 $git push origin master
    4.12 Visit https://github.com/<your username>/<your project>.git and there is your project!


    Suggested Readings

    • TBD

    What To Do

    • TBD


    Properties
    Credits
    Users who have contributed to this Task, its SubTasks and Answers: