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
Link to this week home assignment page
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

Example : prashant@prashant - PC : ~ $ cd fablabvigyanashram/
Step 2
git pull # pull other students changes

Example: prashant@prashant-PC:~/fablabvigyanashram$ git pull
Step-3
git add -- - all # add your changes

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

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

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