etsu logo

CSCI 1210

Essentials of Web Development

Essentials of Web Design

CSCI 1210


Github

Semester Project


Code Repositories

In revision control systems, a repository is a data structure which stores a set of files and directories structure

The whole set of information in the repository may be duplicated on every user's system (or may be maintained on a single server)

Since a project can involve a lot of people, often in different locations, repositories (repos) provide a way to work asynchronously (at different times) on the various parts of the project

Helps prevent one team member’s changes from overwriting another’s and/or breaking the working copy

Code Repositories

Some of the metadata that a repository tracks include:

A historical record of changes in the repository

A set of commit objects

A set of references to commit objects, called heads

Code Repositories

Repos can be architected in several ways

Probably the most popular is a distributed version control system, from which team members can download the entire code base to their local machine, work on it, and upload their changes

Any conflicts that occur (and conflicts DO occur!) can more easily be resolved by comparing changes – or concurrent changes – to earlier versions of the code

Code Repositories

Versioning is the KEY

Projects are usually developed incrementally

Create a basic working version

Add to repo

Develop features and updates

Add, test

Code Repositories

If a change breaks something, versioning allows developers to 'roll back' to the last working version,

then,

figure out what went wrong

Code Repositories

We will be using GitHub for our semester projects

There are several steps (following) that have to be completed

The responsibility for maintaining the repo is the Team Leader’s

Each team member will create a (free) GitHub account, if you don’t already have one

The Team Lead will create the repo and ensure that all team members can contribute

Github


Create a (free) Github Account

Github

Sign up for an account

screen shot

Github

screen shot

Github

screen shot

Github

screen shot

Github

screen shot

Github

screen shot

Github

screen shot

Github

screen shot

Github

screen shot

Github

screen shot

Github

Running Github from the command line can be complex, but there's a desktop application that makes things pretty easy

Github Desktop

(https://desktop.github.com/)

Github

screen shot

Github

screen shot

Github

screen shot

Github

screen shot

Github

screen shot

Github

screen shot

Github

screen shot

Github

screen shot

Github

screen shot

Github

screen shot

Github

screen shot

Github

screen shot

File Explorer

This is your local copy of the repo, where you’ll create, modify, and save files as you work. You could use a flash drive

screen shot

Testing - Create a file

screen shot

Testing - Create a file

screen shot

Testing - Create a file

screen shot

Testing - Create a file

screen shot

Testing - Create a file

screen shot

When you go back to do more work

Someone else on your team may have made changes and/or additions and uploaded them to the repo

So, first thing you have to do is pull a new copy of the repo to your computer

When you go back to do more work

screen shot

When you go back to do more work

If you don't see the pull prompt, pull anyway:

screen shot

When you go back to do more work

So, one of your teammates made a change…

screen shot

The changes will be reflected in your local copy after you’ve pulled the repo

When you go back to do more work

You can use comments to communicate with your team

screen shot

When you go back to do more work

screen shot

When you go back to do more work

screen shot

When you go back to do more work

On the Github website, you can view the files & history of the project

screen shot

When you go back to do more work

View each commit - this is why the summaries are required; to track changes

screen shot

When you go back to do more work

screen shot

When you go back to do more work

screen shot

When you go back to do more work

screen shot

When you go back to do more work

screen shot

When you go back to do more work

screen shot

When you go back to do more work

screen shot

This chart shows the workflow you’ll follow when working on your project. It’s important to remember that once you’ve made changes, they have to be uploaded to the repository so everyone will be able to access your work

Questions?