Say we're in year 20XX. To make a new year's offering course webpage for the new year 20XX+1:
- First, archive the current/old year's
index.htmlpage. Do this by making a new directory called the current year, '20XX', and copying the currentindex.htmlfile held at the top level of thisbe262directory into the new directory. (The logic of the whole webpage is that whateverindex.htmlis found at the top level is the one served by github pages to visitors to the webpage without a year suffix.)- Note: not essential to get a functional
20XX+1page up and running, but: to properly archive the old websites so references are intact, you must also copy the contents of_site/20XX/into the_site/20XX+1folder.
- Note: not essential to get a functional
- Next, edit the
index.htmlfile still at the top level ofbe262to indicate the new year, by changingyear: 20XXtoyear: 20XX+1. - Now, go to the
_postsdirectory. This directory contains the majority of files you would be updating the content of that comprise the website (eg thoseAbout,People,Programming, andReadingslinks that populate the left side of the webpage). The webpage framework essentially expects a structure like a blog, so each of the Markdown files in_postscontains a date. These dates are arbitrary, except for the fact that the current year's posts must all have the current numerical year correctly specified. So, copy the old/current year's posts---namely, eg20XX-01-24-readings.md,20XX-01-25-code.md, and so on---into new versions that are renamed with the new year, e.g.20XX+1-01-24-readings.md, etc. Next, inside each of these year20XX+1post .md files, edit anything that says the old20XXyear into20XX+1: e.g. at the minimum thetag:andyear:attributes at the top of each of the files. But also, for e.g. the20XX+1-01-24-code.mdfile, you'll need to edit a mention insite.data.20XX.speakerstosite.data.20XX+1.speakers, etc. - That last edit recommends that under
_data, there will be expected to be a directory with each year where info is to be found. So, cd into_dataand copy the old year20XXdirectory into a new directory named20XX+1. - Edit these
_data/20XX+1files accordingly to reflect the new schedule of speakers, the new TA's, any mugshots, etc. Add any new people/speaker mugshots tobe262/images/people/so you can call them in files found in_data/20XX+1; remember that it is strongly recommended that all images are square in aspect ratio to prevent formatting weirdness. - Update anything else with new materials! Remember to commit etc.
- To update information, most of the time you'll modify the entries in this year's appropriate
_posts, or the data files automatically consulted in_data/20XX+1. Git committing should result in a Github page build that is indicated by a little yellow dot (denotingpendingcompilation) that turns to a green checkmark next to your commit status in the main repo page, indicating that the changes have propagated to the live webpage. Jekyllautomatically compiles the contents of_site, so do not directly edit the.htmlfiles found in this folder (except for perhaps copying into older year directories), because these changes won't reflect in compiling the github page upon every commit. Instead, update the relevant files in_postsor in the top levelbe262directory.