Assignment for week 1

W1 principles and practices, project management


Set up the repositories

Build a personal site in the class archive describing you and your final project

Planning final project for academy

Documentation

Link to this week home assignment page

Week - 1 Lecture


What Is GIT & How To Use Git:

GIT is a very popular and efficient open source Version Control System. It tracks content such as files and directories.

GIT stores the file content in BLOBs (binary large objects). The folders are represented as trees. Each tree contains other trees (subfolders) and BLOBs along with a simple text file which consists of the mode, type, name and SHA (Secure Hash Algorithm) of each blob and subtree entry. During repository transfers, even if there are several files with the same content and different names, the GIT software will transfer the BLOB once and then expand it to the different files.

The history of your project is stored in a commit object. Every time you make a modification you have to commit it. The commit file keeps the author, committer, comment and any parent commits that directly precede it.

SSH keys

For me earlier it was little bit confusing to understand what are these SSH keys and why they are use? But, after certain reading I got the understanding that these SSH keys are use to pull and push the documents The keys we are using are named fab2016 (private key) and fab2016.pub

First we need to download and Unzip these keys to our ~/.ssh folder

To perform this task I use these two commands

1.cd ~/Downloads

2.unzip fab2016.zip

Then I set the permession on the private keys

mv fab2016 ~/.ssh

mv fab2016.pub ~/.ssh

chmod 600 ~/.ssh/fab2016

Next I add the keys to the system:

eval "$(ssh-agent -s)" # Ensure ssh-agent is enabled

ssh-add ~/.ssh/fab2016 # Add your SSH key to the ssh-agent

To install git in Ubuntu type in a terminal window:

sudo apt-get install git

Basic git workflow

After making necessary changes we need to follow basic git workflow and, upload those changes to the repository.

Note: Do not miss any step, and do them in order.

cd ~/folder_name # go to the repository folder

Screenshot

Example : prashant@prashant - PC : ~ $ cd fablabvigyanashram/

Step 2

git pull # pull other students changes

Screenshot

Example: prashant@prashant-PC:~/fablabvigyanashram$ git pull

Step-3

git add -- - all # add your changes

Screenshot

Step-4

git commit -m "message" # write a meaningful message

Screenshot

Example: prashant@prashant-PC:~/fablabvigyanashram$ git commit -m "updating pages"

Step-5

git push

Screenshot

Example: prashant@prashant-PC:~/fablabvigyanashram$ git push