Week1

Git, Website, Program manager & Final project

Git

Git is a Version Control Software and it can working without network (That is a big thing !). I didn’t have any concept of VC system before so it’s pretty new for me.
For my opinion the Version Control is like a “save/load” function or archived system for the programer. When you messed up, git can get it back to anything happen before. (Wish this could happen in our real life) Many other function of Git is base on this “save/load” function.

  • branch : Create an other version project (For Develop projects with your friends or generate a new idea )

  • git clone: Download online projects to your local computer.
    git init & git remote: init is to set up your file path, usually doing once. git remote is to set up your cloud path.

I learning git by the following links:

Chinese version:
1 Git常用指令 - git Command list !
2 Git入门 - get start with git.

English version:
1 Git Book - git book
2 Instructions - Fab Academy 2016 Archive Instructions

Fab Academy classmate:
1 Flyer - My friend, Fab Aademy 2017 beijing student.
2 Kevin Cheng - From Fab Aademy 2016 Taipei.
3 Lit Liao - From Fab Aademy 2016 Shenzhen.

Generate SSH Keys

First thing you have do is telling gitlab who you are. So an SSH key allows you to establish a secure connection between your computer and GitLab.

1.Sign in on git.fabacademy.org with your fablabs.io ID.
2.Before generating an SSH key in your shell, check if your system already has one by running the following command:

cat ~/.ssh/id_rsa.pub
								

If you see a long string starting with ssh-rsa, you can skip the next ssh-keygen step.

3.Generate a new SSH key, use the following command:

ssh-keygen -t rsa -C “$your_email"
								

This command will prompt you for a location and filename to store the key pair and for a password. When prompted for the location and filename, just press enter (3 times) to use the default. If you use a different name, the key will not be used automatically.

4.Use the command below (same with 2) to show your public key:

cat ~/.ssh/id_rsa.pub
								

Copy: section under the ‘SSH’ tab in your user profile. Please copy the complete key starting with ssh-rsa and ending with your username and host.
or
To copy your public key to the clipboard, use the code below.

5.Depending on your OS you’ll need to use a different command:(mac)

pbcopy < ~/.ssh/id_rsa.pub
								

Setting up your SSH Keys on Gitlab

You can see this video:
https://about.gitlab.com/2014/03/04/add-ssh-key-screencast/

Or
1.Click git.fabacademy.org to enter GitLab of fabacademy. Then click the Profile Setting item which is located on the left side of the windows.
Click the SSH Keys item which is located on the left side of the windows.
In the text-field named “Key”,right click you mouse and select paste the SSH Keys was copy to the text-field, wait for a moment,you emial was appeared under the Title box.
Setting up your SSH Keys on Gitlab sucessfully.

Please following Flyer’s tutorials, it’s more clear

Setting up your SSH Keys on Gitlab

After I “git push” my website to the gitlab, I need to create an home page of Fab Academy Beijing 2017. I add the file “fab_academyBJ_2017” under the root directory then update the index.html. But at first time it’s not work and I get this report:

Then I “git pull” and “git push” again it works.

Change the Index.html file

After push I changed a littler bit index.html but when I push again it doesn’t work. So I “git remote -v” the remote files then git push again

I get this report: Everything up-to-date & nothing change but luckily I found out a solution use this command :

git push -f
								

WebSite

I use bootstraps template to develop my website. download from this link

40 个超棒的免费 Bootstrap HTML5 网站模板: - 40 Bootstrap template for free.
I choose “04 worthy”

Then the editor I am using is Atom, an open source platform. You can hack it if you like. Change the outlook, or add some functions.

Upload our code to gitlab

Now I’m try to use SourceTree moving my codes to the server. But I have a set up problem with my e-mail adress so. still working on it.

Final Project