OPS435 Python Lab 0
Introduction to git and github.com
Contents
Lab Objectives
- In this lab, you will create an account on github.com and follow the Github "Hello World guide" to create a new public repository on github to learn about the basic workflow of using github to track and manage revisions of software or other contents. The essential operations provided by Github includes
- creating new repository,
- creating a new branch,
- making changes to files,
- creating a pull request, and
- opening and merging a pull request.
- You will then use the git client on a Linux machine to access and download the contents from the repository you created on github. Note: if you don't have your Linux VM ready, you can login to matrix.senecacollege.ca to use the git client.
Reference
Overview
- git - a distributed revision control system with rich command set that provides both high-level operations and full access to git's internals.
- Github - a code hosting platform for version control and collaboration that lets people work together on software projects from anywhere.
Tasks
Task 1: Create a Github.com account
- Start your web browser and go to github.com and use your Seneca email to sign up for a new account if you don't already have one.
- Record your github.com user name on your lab logbook.
- email your github.com user name to your OPS435 professor from you Seneca email account.
Task 2: Create a project and make a pull request on GitHub
- Follow the Github "Hello World Guid" here to perform the following activities:
- Create a repository
- Create a branch
- Make and commit changes
- Open a pull request, and
- Merge your pull request
- Please make the following changes when following the guide:
- name the new repository using your Seneca user name instead of "hello-world".
- add your full name, and OPS435 section to the README file, do not post any other personal information there.
Task 3: Clone a Github.com repository into a new directory on a Linux system
- You can do the following steps either on matrix.senecacollege.ca or on your CentOS 7 vm:
- login to matrix.senecacollege.ca or your CentOS 7 vm
- create a directory named ops435/lab0 under your home directory
- change your working directory to ~/ops435/lab0
- run the following git command to clone the repository you created in Task 2 on github.com
git clone https://github.com/[your_github_user_name]/[your_seneca_user_name]
- for example, if your github user name is "rc2030", and your seneca user name is rchan, the git command to clone the repository you created in Task 2 should be:
git clone https://github.com/rc2030/rchan
- change your working directory to your cloned git repository, which should be ~/ops435/lab0/[your_seneca_user_name]
- run the following two commands and capture their output to a file or to your lab log book:
git log
tree -a
LAB 0 SIGN-OFF (SHOW INSTRUCTOR)
- Have the following items ready to show your instructor:
- You lab 0 note on your lab log book showing your github.com user name
- The output of the command "git log" from Task 3
- The output of the command "tree -a" from Task 3
- You also need to
- Put the above information in a plain text file named "lab0_[your_seneca_user_name].txt" and submit it via Blackboard by the lab 0 due date.
Lab Review
- *What is a git repository?
- *What kinds of data can be stored in a git repository?
- *What is a git branch?
- *What is the name of the definitive branch in a git repository?
- *What is a "pull request" related to a branch in a git repository?