Introduction to Git and Github

Slides:



Advertisements
Similar presentations
Github. Download & install git   Git bash  Git GUI.
Advertisements

Hosted Git github. From an alumni (2010)  You know, the more time I spent in industry the better I've understood what a strong advocate you are for the.
Using svn and git with Unity and sdk
Git A distributed version control system 23-Aug-15.
1 CSE 390 “Lecture 11” Version control with Git slides created by Ruth Anderson, images from
Introduction to Git and Github Joshua imtraum.com.
BIT 285: ( Web) Application Programming Lecture 07 : Tuesday, January 27, 2015 Git.
Git for Version Control These slides are heavily based on slides created by Ruth Anderson for CSE 390a. Thanks, Ruth! images taken from
Getting Started with GIT. Basic Navigation cd means change directory cd.. moves you up a level cd dir_name moves you to the folder named dir_name A dot.
Git A distributed version control system Powerpoint credited to University of PA And modified by Pepper 8-Oct-15.
Version control Using Git Version control, using Git1.
Drexel University Software Engineering Research Group Git for SE101 1.
…using Git/Tortoise Git
SWEN 302: AGILE METHODS Roma Klapaukh & Alex Potanin.
Information Systems and Network Engineering Laboratory II DR. KEN COSH WEEK 1.
Team 708 – Hardwired Fusion Created by Nam Tran 2014.
Git Fundamentals Rochelle Terman 13 January 2014.
Introduction to GitHub Alex Bigazzi Dec. 4, 2013 ITS Lab GitHub Introduction1.
1 GIT NOUN \’GIT\ A DISTRIBUTED REVISION CONTROL AND SOURCE CODE MANAGEMENT (SCM) SYSTEM WITH AN EMPHASIS ON SPEED. INITIALLY DESIGNED AND DEVELOPED BY.
Intro to Git presented by Brian K. Vagnini Hosted by.
Introduction to Git Yonglei Tao GVSU. Version Control Systems  Also known as Source Code Management systems  Increase your productivity by allowing.
© 2015 by Herb Holyst Introduction to git Cytomics Workshop December, 2015.
Welcome to Snap! Below the Line Decal Facilitated By: Zachary McPherson and Bao Xie.
Hosted Git github. From an alumnus (2010)  You know, the more time I spent in industry the better I've understood what a strong advocate you are for.
Information Systems and Network Engineering Laboratory I DR. KEN COSH WEEK 1.
Git How to 1. Why Git To resolve problems in lab exams (accidental deletions) Use existing Libraries with ease (Statistics and Computer) Prepare undergraduates.
Installing git In Linux: sudo apt-get install git In Windows: download it from run the setuphttp://git-scm.com/download/win.
BIT 285: ( Web) Application Programming Lecture 07 : Tuesday, January 27, 2015 Git.
Git A distributed version control system Powerpoint credited to University of PA And modified by Pepper 28-Jun-16.
Basics of GIT for developers and system administrators
CS5220 Advanced Topics in Web Programming Version Control with Git
M.Sc. Juan Carlos Olivares Rojas
Information Systems and Network Engineering Laboratory II
L – Modeling and Simulating Social Systems with MATLAB
GIT AND GITHUB WORKSHOP
Git-Github Safa Prepared for the course COP4331 – Fall 2016.
Setting up Git, GitBash, and GitHub
Version Control overview
Version control, using Git
CS5220 Advanced Topics in Web Programming Version Control with Git
Software Engineering for Data Scientists
Macaualy2 Workshop Berkeley 2017
An introduction to version control systems with Git
Version Control with Git accelerated tutorial for busy academics
SU Development Forum Introduction to Git - Save your projects!
Distributed Version Control with git
Akshay Narayan git up to speed with RCS Akshay Narayan
An introduction to version control systems with Git
The Big Picture
SIG: Open Week 1: GitHub Tim Choh.
Setting up Git, GitBash, and GitHub
An introduction to version control systems with Git
Getting Started with Git and Bitbucket
Version control with Git Part II
Using Github.
Git CS Fall 2018.
Version Control System - Git
Version control with Git
CS791v Homework and Submission
Introduction to Git and GitHub
Git started with git: 2018 edition
Patrick Cozzi University of Pennsylvania CIS Fall 2012
Version Control with Git and GitHub
GitHub 101 Using Github and Git for Source Control
Introduction to The Git Version Control System
Introduction To GitHub
Using GitHub for Papyrus Models Jessie Jewitt – OAM Technology Consulting/ ARM Inc. January 29th, 2018.
Introduction To GitHub
Advanced Git for Beginners
Presentation transcript:

Introduction to Git and Github Fall 2018 – CS 480

Brief Overview Github Account and Homework Submission Visualization of Git Basic Git commands for quick workflow Resources Resources for Adv. workflows

Create Github Account You will be making use of private repositories, which are free for students at https://education.github.com/. This requires an email account with a “.edu” suffix. Github might take a week or two to reply, but you can still do things with a public repository Set up Repository Add the cs480-680 account as collaborators Push PA0 to your Github with the following instructions Email the cs480-680 Gmail account to confirm.

Local installation and setup sudo apt-get update sudo apt-get install git Setup git config --global user.name “Your Name” git config --global user.email student@nevada.unr.edu git config --list

Creating your first repo Go to github.com, and click on “New repository” The repository name (not your username) will be in the form cs<ClassNumber><LastName>. No underscores, hyphens or spaces please; there are a lot of students, and this helps grading. cs480Lopez or cs680Lopez Download your repository to a common directory you will be using. This will be your workspace from now on.

Your first commit Go into your new directory Open README.md with your favorite text editor. (Sublime, Atom, VSCode…) Add a few things to make it look pretty Stage, commit and push. git status git add README.md git commit –m “first commit!” git push origin master

New Code PA0 and PA1 may be found at https://github.com/HPC-Vis/computer-graphics You can download this code and push it to your repo in two separate ways. Copy Files Over (easier way) Download this repository elsewhere Copy all files to your repository directory Stage, commit, and push the new files. (git status should tell you what they are) Change repo’s remote URL git clone https://github.com/HPC-Vis/computer-graphics git remote set-url origin https://github.com/<USERNAME>/<REPOSITORY>.git Don’t forget to remove the original repository you downloaded earlier.

Understanding what you’re doing

Staging, commits and pushing Github is basically cloud storage for developers, and is based on lines of code, not files themselves. Files are staged for commit, commited, and then pushed to the remote repository from the local repository (file system) Commits are essentially linked lists of file changes, not files. Also worth noting that a commit can have multiple parents (merge commits), and its own unique UUID hash.

Quick Visualization https://onlywei.github.io/explain-git-with-d3/#commit

Resources and ProTips

Pro Tip! - .gitignore .gitignore files are present in the root directory of your repository. You can specify files to ignore when staging, so your `git status` commands don’t blow up the command line if you have a lot of binaries or photos that you will never intend on commiting. Resource: https://help.github.com/articles/ignoring-files/

Pro Tip! – Branching and Pull Requests. If you are comfortable enough with github, you might want to consider branching during group projects to separate work tasks amongst people. Branches are deviations in the commit tree which get requested to be joined to the master branch through merging, or formally, through pull requests. These are good for feature management, but merge conflicts are something that may occur. These are common both in industry, so learn to deal with them now! Resource: https://www.atlassian.com/git/tutorials/comparing- workflows

Contacting Graders Graders’ Email: cs480.680@gmail.com Graders’ GitHub: cs480-680 Remember to add us as a collaborator! Otherwise, we can’t grade your assignments.

Q&A Any questions?