This repository is one example of how you may want to structure your course repository. Below are some key features of this structure.
-
All content is on the
gh-pages
branch.- By putting content on the
gh-pages
branch (as opposed to themaster
) branch, GitHub will automatically create a site for your repository. You can view the site for this repo at https://gunjanbaid.github.io/course-repo-example. - All markdown (
.md
) files that have a heading (lines starting with hashes) will be published. - Markdown files without headings will not be published.
- By putting content on the
-
Separate folders for each semester
- This allows you to save content from each semester.
- Clean URL structure for course sites. For example: https://gunjanbaid.github.io/course-repo-example/fa17 and https://gunjanbaid.github.io/course-repo-example/sp18.
-
Separate folders for
hw
,labs
,lec
,proj
in each semester's folder. -
Separate
index.md
files in each semester's folder.- There is an
index.md
file in thefa17
folder and in thesp18
folder. - The
index.md
file in the root directory redirects to theindex.md
file for the current semester. Currently, it redirects tofa17
. Thus, if you go to https://gunjanbaid.github.io/course-repo-example, you will be redirected to https://gunjanbaid.github.io/course-repo-example/fa17.
- There is an
-
You can find examples of how to set up OK in the hw02 and lab02 folders. Specifically, there are examples of how to set up student-side autograding and submission.
-
You do not have to use the
gh-pages
to publish content. You can also use themaster
branch. To do so, select the desired branch as the GitHub Pages source under your repository's settings (shown below). -
The theme for the site can be changed very easily through the repository's settings tab. First, click on the settings tab. Then, scroll to the GitHub pages section. You may update the site theme by clicking on
Choose Theme
.