Collaborative Git An introduction to Git with others

Slides:



Advertisements
Similar presentations
Introduction To GIT Rob Di Marco Philly Linux Users Group July 14, 2008.
Advertisements

Version Control CS440 – Introduction to Software Engineering © 2014 – John Bell Based on slides prepared by Jason Leigh for CS 340 University.
Version Control What it is and why you want it. What is Version Control? A system that manages changes to documents, files, or any other stored information.
Patterns & practices Symposium 2013 Introducing Git version control into your team Mark
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.
1 CSE 390 “Lecture 11” Version control with Git slides created by Ruth Anderson, images from
Introduction to Git and Github Joshua imtraum.com.
Git for Version Control These slides are heavily based on slides created by Ruth Anderson for CSE 390a. Thanks, Ruth! images taken from
Fundamentals of Git By Zachary Ling 29 th, Aug,
Version Control with Subversion. What is Version Control Good For? Maintaining project/file history - so you don’t have to worry about it Managing collaboration.
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.
Version Control. What is it? Software to help keep track of changes made to files Tracks the history of your work Helps you collaborate with others.
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.
…using Git/Tortoise Git
Git workflow and basic commands By: Anuj Sharma. Why git? Git is a distributed revision control system with an emphasis on speed, data integrity, and.
Information Systems and Network Engineering Laboratory II DR. KEN COSH WEEK 1.
Version Control.
Team 708 – Hardwired Fusion Created by Nam Tran 2014.
Version Control Systems. Version Control Manage changes to software code – Preserve history – Facilitate multiple users / versions.
Sofia Event Center May 2014 Martin Kulov Git For TFS Developers.
Version Control System Lisa Palathingal 03/04/2015.
Intro to Git presented by Brian K. Vagnini Hosted by.
GitHub and the MPI Forum: The Short Version December 9, 2015 San Jose, CA.
Introduction to Git Yonglei Tao GVSU. Version Control Systems  Also known as Source Code Management systems  Increase your productivity by allowing.
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.
It’s not just an insult from Harry Potter!. What is Git? Distributed Version Control System (DVCS) – Compared to a Centralized Version Control System.
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.
Jun-Ru Chang Introduction GIT Jun-Ru Chang
Adam Young Presented by Senior Software Engineer, Red Hat License Licensed under PKI, Git and SVN.
Git Girish Git VCS that I have used ClearCase, cvs, svn Happy p4 user.
GIT: (a)Gentle InTroduction Bruno Bossola. Agenda About version control Concepts Working locally Remote operations Enterprise adoption Q&A.
KIT – University of the State of Baden-Wuerttemberg and National Research Center of the Helmholtz Association STEINBUCH CENTRE FOR COMPUTING - SCC
Basics of GIT for developers and system administrators
Introduction to GitHub
M.Sc. Juan Carlos Olivares Rojas
4 Version control (part 1)
Information Systems and Network Engineering Laboratory II
Version Control with Subversion
Version Control.
Code Management Releases
Source Control Dr. Scott Schaefer.
Version Control with Subversion (SVN)
Version control, using Git
Git for Visual Studio Developers MARTIN KULOV, ASE
Version Control System using Git
Software Engineering for Data Scientists
Version Control with Git and GitHub
Macaualy2 Workshop Berkeley 2017
Version Control System
Version Control with Git accelerated tutorial for busy academics
Distributed Version Control with git
Akshay Narayan git up to speed with RCS Akshay Narayan
(Advanced) Web Application Development
Anatomy of a Git Project
The Big Picture
Git CS Fall 2018.
Version Control with Git
GitHub and Git.
Patrick Cozzi University of Pennsylvania CIS Fall 2012
Version Control with Git and GitHub
Git Introduction.
Presentation transcript:

Collaborative Git An introduction to Git with others Trever Fischer, Fedora Ambassador, KDE Hacker http://tdfischer.fedorapeople.org

Source Version Control Manages source code across developers, allowing many people to hack at the same time. Two major systems at UA

Subversion Requires a central server and repository to keep everyone in sync Requires network access to perform diffs, commits, log viewing, etc Branches are super-hard and are really a bolt-on. Your checkout is just a copy of the files and enough data to commit later. Its familiar and easy.

Git Every developer has their own repository. Your clone can exist independent of where you got it. A different workflow than SVN - yours. Slightly more effort, but lots more benefits.

Git compared to SVN Distributed Build a commit incrementally Offline access Encourages many small changes Lets you have your own workflow Centralized Remember everything you need to commit Requires networking Devs tend to pile up changes into bigger commits

Distributed? Every git repository is independent of each other If one dies, there are many more. No need for a centralized server Anyone can pick and choose which changes they want from where

Fragmentation Anarchy! Without some authority, it is very easy for everyone to get out of sync.

Git Hosting Gives everyone a well-known place to refer to as “the authority”. A permanent, public home on the internet. You don't need to hunt down a dev to clone from their laptop. Lets everyone submit their changes to one place instead of to each dev individually.

Hosting Authentication SVN Git HTTPS with Basic auth Ssh Anonymous checkouts Only ssh for pushing Anonymous checkouts

Init Workflow Push You ACM Add Commit Pull

Workflow You Other Developer ACM Add Commit Clone

Workflow Push You Other Developer ACM Add Add Commit Commit Pull

Alternate Workflows Big Commits Little Commits All at once, or in pieces Private personal branches Swaths of changes, then dissection of commits Git-svn

More Developers Alpha's Server ACM C D A B E F

Branches Instant and super easy to use Organizes bigger groups of commits in terms of features/fixes in progress Merging is easy and automated

Handling Conflicts If, during a merge, git can't figure it out, a conflict occurs. Like a head-on train collision, the developer must manually clean up the mess and generate the final result of the merge. Commit the result, move on with life.

Remote Branches Every repository can be considered a branch of every other repository Special 'origin' branch Cloning a repo automatically sets origin to...the origin. Push/Pull equates to a download then a merge

git-svn Its magic! Requires a complete download of all history since day zero. An offline copy of the SVN repository Two-way transfer of branches, tags, commits

Git-svn workflow SVN dcommit You Clone Add Lots of Time Commit

Summary Git lets you work alone, or in teams You can fiddle with the source without internet It enables super easy sharing Adaptable to any workflow

Questions

Activity! Yay!