Knowledge-Mobilization-Example-Repository

A repository to test workflows that automatically process data

View project on GitHub

Getting all your work in one place!

This repository is intended to serve as an example and guide for taking all the components of a project and bringing them together in one place.

Why use GitHub?

GitHub is the perfect place to share your work publicly as it is free, public, and searchable!

Another reason to use GitHub is that it does many of the things you might want for knowledge mobilization in one place:

  • Store a version of your paper, article, thesis, report, etc in a freely accecible and open location
  • Store all of the files associated with your work such as datasets, metadata files, instruction on how to reproduce your work, pre-made citations, pictures, videos, visualizations, and more!
  • Host a webpage (completely free!)
  • Create an automated workflow that will allow others to run the same analysis that you performed on your data to test your methods or even try it out on their own data!
  • Monitor your repository and gather statistics on views (if you have a webpage you can also add Google Analytics for even more data!)

Try it for yourself!

This repository demonstrates all of the above features and can be used as a model for your projects! You can copy this repository to your own GitHub account by “Forking” it using the fork button.

Alternatively, the section below breaks down each component of the repository and has instructions on how to replicate it.

Before you can start creating your own repositories with GitHub, you will need to sign up for an account at GitHub.com

Creating a Repository

The first step to any great project in GitHub is to make a repoisitory for that project. In GitHub you can make as many public repositories as you want completely for free! You can also make as many private repositories as you want to fill with your private files but some of the extra features like the ability to make a webpage will be limited unless you pay a fee.

To make a repository:

  • Make sure you are logged in to GitHub.com and on your dashboard (the default view when you log in)
  • Click the green button at the top left (It should say either “New” or “Create Repository”)
  • Fill in the form with:
    • The name of the repository (All spaces in the name you pick will be replaced by dashes upon creating the repository since names in GitHub can’t have spaces)
    • A description of the repository (Keep it brief. Ideally one short sentence)
    • If you want the repository to be Public or Private
    • Choose if you want a README file automatically created for you (Highly reccomended as a README file has many uses!)
    • Decide if you want to add a gitignore file (Not needed for most uses. For more information on gitignore files, see the Ignoring Files section of the GitHub documentation)
    • Decide if you want to add a license to your repository.
      • From the GitHub Documentation: “Without a license added here, the default copyright laws apply, meaning that you retain all rights to your source code and no one may reproduce, distribute, or create derivative works from your work. If you’re creating an open source project, we strongly encourage you to include an open source license”
      • For more information on how licenses work on a repository, see the Licensing a Repository section of the GitHub documentation
  • Click the “Create Repository Button”

## Adding Files in GitHub Now that you have a repository all set up, you will want to add or create some files! On the main page of your repository (sometimes referred to as the “Root” of the repository) you will either have a page telling you to add files in various ways or a page showing your starting files (README, .gitignore, lisence file). If you decided to add a README file in the repository creation form, on top of being able to see the README file in your list of files, you will see the contents of the README file displayed below! This is the primary purpose of the README file, being the front page of your repository filled with all the information any visitors might need to know about the purpose of your repository, how to use the files within it, links to any relevant other locations, etc.

To add new files to your repository, the easiest way is to click the “Add file” button and choose if you want to upload files or create a new file. Depending on the size of your browser window, the “Add file” button will either look like a + sign or say “Add file”. In either case it is located beside the green “<> Code” button.

If you choose to upload files, you will be taken to a page where you can drag files from your desktop or file explorer the upload area. Alternatively, you can choose to browse your computer for files to upload. In either case, the files will appear in a list below the upload area once they are ready to be uploaded.

Unlike many other platforms, uploading a file to Github is a two step process. Once you have chosen the files you want to upload they are considered “staged” which means “ready to be committed”. The second step is to commit those files to the repository. This is done with the commit form at the bottom of the page where you can enter a title describing what is being added to the repository and an optional description for more detail. The reason for this two step process is that all actions taken on the repository are tracked via a process called “version control”. Version control is the term used to describe how GitHub keeps a detailed history of every change made to each repository, including and details filled into the commit forms, what user made the change, the date and time of the change, and a detailed log of what exactly was changed including files that were added/removed, files that were edited, and even tracking what exact words were changed within a file!

With that in mind, it is always best to at least put a title on each commit you make briefly describing the change that was made.

Once you have commited new files, they will appear in the list of files on the main page of your repository.

Markdown and Editing Files

Making a Webpage out of your repository

Using Issues for Discussion

Adding Automation

Monitoring Activity