The task for this week's assignment was to create a personal website describing myself and the process of the first two assingments, and uploading the site to class archive. In order to do that we needed to become familiar with version control protocols in git and explore different web development tools. Below is the description of the process:
1. I started by watching the recitation by Fiore Basile on version control and tutorials about Git here and here. On the site of W3Schools I experimented with html language and downloaded Atom text editor tool to create a code for my website.
2. I proceeded by following the steps in this tutorial for Windows. I downloaded and installed a Git Bash software for communicating between the remote server of GitLab and my local computer. The Git Cheat Sheet gave me a good overview of the basic commands used in Git.
3. As a next step I generated a SSH key in Bash with ssh-keygen -t rsa -C ‹your mail› command that links my email to my GitLab account. The first mistake I made was to save the SSH key under a specific file name, which resulted with Bash not creating a ssh directory on my computer. I then regenerated the key and left the file name unchanged by just pressing an enter. The directory was now created and I could reveal my key by typing in cat ‹~/.ssh/id.pub.
4. After copying the SSH key from Bash I went to my GitLab page where under "Settings" > "SSH Keys" I could insert the key and link it to my account.
5. I continued by configuring my computer for GitLab and cloning the Fablab's repository on my computer. In this step I made 2 mistakes: 1. I substituted user.name and user.email in git config --global commands directly with my name and email which prompted an error, probably because Bash was not able to categorize the inserted information. It workt well after adding user.name and user.email to the commands. 2. When trying to clone the Fablab's folder I inserted a command like shown in the tutorial git clone [email protected]:fabacademy‹year›/‹your fablab name›.git but was prompted with an error fatal: could not read from remote repository. From David's site I learned that he had the same error and I tried copying the url directly from GitLab. This worked and I could proceed with cloning.
6. On my GitLab account I turned the global notification level to "watch" in order to receive messages from other students. In addition, I added a .gitlab-ci.yml file under "+">"new file">"template">"choose type">".gitlab-ci.yml">"html">"commit changes" to be able to publish the repository as a website.
7. Now I could start working my website. I searched online for suitable templates and found one on Free CSS. I downloaded the package and got familiar with its structure in Atom.
8. I wanted to test the template without editing it by publishing it online. I used the following commands: 1. git pull, to update to the last version from the repository to my pc, 2. git status, to check changes between my pc and the server, 3. git add ., to add all the new and changed files to the stage, 4. git commit -m, to commit the files and 5. git push, to get the website online.
9. The push was a success and the template worked well.
10. I could now proceed with editing the code of the template to create my own website. I edited the top navigation bar and all the subsites such as "Home", "Work", "About" and "Contact". I created new subsites for the assignments and linked them with "Work" page. In the process I also dowloaded an additional package to Atom for the live preview of html, so that I would have a visual guidance to track the changes I make to the code. This turned out to be very helpful tool.