Version Control.

Slides:



Advertisements
Similar presentations
An Introduction By Sonali and Rasika.  Required for the project  Show the versions of your code in the course of development  Show versions of your.
Advertisements

LECTURE 14 OCT 22, 2010 Git, in graphic form. Change tracking basics.
Version Control Systems Phil Pratt-Szeliga Fall 2010.
Version Control with git. Version Control Version control is a system that records changes to a file or set of files over time so that you can recall.
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.
A primer on version control at OTN
With Mercurial and Progress.   Introduction  What is version control ?  Why use version control ?  Centralised vs. Distributed  Why Mercurial ?
Git – versioning and managing your software L. Grewe.
GIT An introduction to GIT Source Control. What is GIT (1 of 2) ▪ “Git is a free and open source distributed version control system designed to handle.
Warmup A programmer’s wife tells him, “Would you mind going to the store and picking up a loaf of bread? Also, if they have eggs, get a dozen.” The programmer.
Branching. Version Control - Branching A way to write code without affecting the rest of your team Merge branches to integrate your changes.
Version control Using Git Version control, using Git1.
ITEC 370 Lecture 16 Implementation. Review Questions? Design document on F, feedback tomorrow Midterm on F Implementation –Management (MMM) –Team roles.
Source Control Primer Patrick Cozzi University of Pennsylvania CIS Spring 2012.
Version Control. How do you share code? Discussion.
Version Control Systems academy.zariba.com 1. Lecture Content 1.What is Software Configuration Management? 2.Version Control Systems (VCS) 3.Basic Git.
Information Systems and Network Engineering Laboratory II DR. KEN COSH WEEK 1.
1 Applied CyberInfrastructure Concepts ISTA 420/520 Fall
1 GIT NOUN \’GIT\ A DISTRIBUTED REVISION CONTROL AND SOURCE CODE MANAGEMENT (SCM) SYSTEM WITH AN EMPHASIS ON SPEED. INITIALLY DESIGNED AND DEVELOPED BY.
Version Control Systems. Version Control Manage changes to software code – Preserve history – Facilitate multiple users / versions.
Intro to Git presented by Brian K. Vagnini Hosted by.
Version Control System
CS 160 and CMPE/SE 131 Software Engineering February 16 Class Meeting Department of Computer Science Department of Computer Engineering San José State.
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.
Introduction to Git - Chirag Dani. Objectives Basics of Git Understanding different “Mindset of Git” Demo - Git with Visual Studio.
Git How to 1. Why Git To resolve problems in lab exams (accidental deletions) Use existing Libraries with ease (Statistics and Computer) Prepare undergraduates.
Using Git with collaboration, code review, and code management for open source and private projects. & Using Terminal to create, and push commits to repositories.
1 Ivan Marsic Rutgers University LECTURE 2: Software Configuration Management.
Installing git In Linux: sudo apt-get install git In Windows: download it from run the setuphttp://git-scm.com/download/win.
Collaborative Git An introduction to Git with others
GIT Version control. Version Control Sharing code via a centralized DB Also provides for Backtracking (going back to a previous version of code), Branching.
Version Control Systems
Git primer Landon Cox January 19, 2017.
Information Systems and Network Engineering Laboratory II
Discussion #11 11/21/16.
I Don’t Git It: A beginner’s guide to git Presented by Mathew Robinson
Git and GitHub primer.
11 Version control (part 2)
CReSIS Git Tutorial.
LECTURE 2: Software Configuration Management
Keeping track of all the copies of your files
Source Control Dr. Scott Schaefer.
Discussion 11 Final Project / Git.
Version control, using Git
Version Control System using Git
Software Engineering for Data Scientists
Version Control with Git and GitHub
Macaualy2 Workshop Berkeley 2017
Version Control Systems
Storing, Sending, and Tracking Files Recitation 2
Akshay Narayan git up to speed with RCS Akshay Narayan
LECTURE 3: Software Configuration Management
The Big Picture
SIG: Open Week 1: GitHub Tim Choh.
Part 1: Editing and Publishing Files
Advantages Project Career Divide & Conquer Collaboration
Git and Jira Tutorials Kan Qi
GitHub A Tool for software collaboration James Skon
Using Github.
Git CS Fall 2018.
Introduction to Git and GitHub
Git started with git: 2018 edition
CMPE/SE 131 Software Engineering February 14 Class Meeting
GitHub and Git.
Patrick Cozzi University of Pennsylvania CIS Fall 2012
Version Control with Git and GitHub
Git GitHub.
Introduction to The Git Version Control System
Presentation transcript:

Version Control

How do you share code? Discussion

How we share code Working in a team, you need to share code Email attachments? Sneakernet? What if two people edit the same file at the same time? Google Docs? Dropbox? No merging in Dropbox GoogleDocs not meant for code No syntax highlighting, etc.

git Designed for code What git does for you Why git? Version control and source control tracks all changes submitted to the codebase revert changes Create working braches without affecting stable releases Tells you when there are merge conflicts Why git? Because “everyone” is using it You’ll likely use it in industry

git Version control software Remote server hosts your repository Every user maintains a local copy of the entire repository Need to install git if it doesn’t come with your OS

git is..

Scenario Bob writes a bug just before a big release With poor version control The customer sees the bug The customer is not happy With proper version control Bob pushes his changes The team notices the bug and reverts Bob’s commit Customer never sees the bug

(some) git Commands Make a repo Update a repo Connect to a remote repo init Update a repo add commit push Connect to a remote repo clone Update local repo pull

To Make a Repository init Or create a repo in GitHub Creates a new git repo in the current directory Or create a repo in GitHub

Updating the Repo add <filename> commit push Tell git that you want it to track <filename> “add –A” to add all files commit Updates changes to your local repository Add a meaningful commit message “git commit –am” to add and commit all modified files push Updates the remote repo with the changes committed to your local repo Lets your team access your changes Will warn you to pull first if there are remote changes

Commit messages Many different conventions Choose one Or not AngularJS Whatever you do, make your messages meaningful and descriptive Your future self and contributors will thank you! Especially as you move on to bigger and better projects

Connecting to a repo clone <repoLocation> https ssh Copies the entire repository to your local directory https git clone https://hartloff@bitbucket.org/hartloff/cse250-fall2015.git ssh git clone git@bitbucket.org:hartloff/cse250-fall2015.git must create ssh keys and upload your public ssh key to the server

Pull often pull pull often! Copies the most up-to-date code from the server to your local copy of the repo Can cause a merge conflict pull often!

git Structure

GitHub Provides servers to host git repos Why GitHub? An interface and server for git Why GitHub? Because “everyone” uses it It’s free