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

    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

    Create a GitHub account and contribute your project to GitHub


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