Gotta get Git Chris Sherwood and Alfredo Aretxabaleta USGS Woods Hole.

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.
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.
om om GIT - Tips & Tricks / git.dvcs git-tips.com
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.
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.
Version control Using Git 1Version control, using Git.
Git. What’s Git? A British swear A Distributed Version Control System Developed in 2005 by Linus Torvalds for use on the Linux Kernel Git Logo by Jason.
Version control with Github August 26th, 2014 Daniel Schreij VU Cognitive Psychology departement
علیرضا فراهانی استاد درس: جعفری نژاد مهر Version Control ▪Version control is a system that records changes to a file or set of files over time so.
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.
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.
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
Lokesh Puppala. Introduction  Git - Distributed version control system  Initiated by Linus Torvalds  Strongly influenced by Linux kernel development.
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.
Object-Oriented Analysis & Design Subversion. Contents  Configuration management  The repository  Versioning  Tags  Branches  Subversion 2.
Team 708 – Hardwired Fusion Created by Nam Tran 2014.
By: Anuj Sharma. Topics covered:  GIT Introduction  GIT Benefits over different tools  GIT workflow  GIT server creation  How to use GIT for first.
1 GIT NOUN \’GIT\ A DISTRIBUTED REVISION CONTROL AND SOURCE CODE MANAGEMENT (SCM) SYSTEM WITH AN EMPHASIS ON SPEED. INITIALLY DESIGNED AND DEVELOPED BY.
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.
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.
CS 160 and CMPE/SE 131 Software Engineering February 16 Class Meeting Department of Computer Science Department of Computer Engineering San José State.
Introduction to Git - Chirag Dani. Objectives Basics of Git Understanding different “Mindset of Git” Demo - Git with Visual Studio.
1. A new git is initialized as a remote repository JohnRemote repositoryPeter master C0 CodingWhileBlack.com PROPEL CODING
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.
1 Free Electrons. Kernel, drivers and embedded Linux development, consulting, training and support. http//free-electrons.com Introduction to Git Thomas.
Getting Started with Git Presented by Jim Taylor Rooty Hollow, Owner Verizon Wireless, Senior Programmer/Analyst Git User for 6 years.
Jun-Ru Chang Introduction GIT Jun-Ru Chang
GitHub A web-based Git repository hosting service.
Backing up a machine with git
KIT – University of the State of Baden-Wuerttemberg and National Research Center of the Helmholtz Association STEINBUCH CENTRE FOR COMPUTING - SCC
Introduction to Git and git-svn Paul Gier Red Hat Sept. 27, 2011.
.git git-scm.com free and open source distributed version control system p.s. for beginners…
M.Sc. Juan Carlos Olivares Rojas
I Don’t Git It: A beginner’s guide to git Presented by Mathew Robinson
Version Control Systems
11 Version control (part 2)
Version Control overview
Version control, using Git
An introduction to version control systems with Git
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
SIG: Open Week 1: GitHub Tim Choh.
An introduction to version control systems with Git
Version Control System - Git
Version control with Git
Version Control with Git
Patrick Cozzi University of Pennsylvania CIS Fall 2012
Version Control with Git and GitHub
Version/revision control via git
Git Introduction.
Git GitHub.
Introduction to The Git Version Control System
Presentation transcript:

Gotta get Git Chris Sherwood and Alfredo Aretxabaleta USGS Woods Hole

Git documentation Git - - distributed-is-the-new-centralized Git for SVN users “Pro Git” – Scott Chacon (also online) “Pragmatic Guide to Git” – Travis Swicegood CRS attempts

Advantages Designed for distributed development – All local repos are complete – Anybody can make a local archive – You can pull from any archive you have access to Most operations are local (faster, work offline) Integrity: everything is check-summed Only adds data (maybe safer) Lightweight, local branches GUI tools and hosting services similar SVN

Disadvantages A(nother) learning curve Sometimes TM(U)I Also, sometimes too much typing

Installation Linux, Cygwin often have git, but if not: $ sudo apt-get install git-core Mac can get it via MacPorts $ sudo port install git-core +svn +doc +bash_completion +gitweb Windows Modified after “Pro Git”

First-time user setup Important $ git config --global user.name “csherwood (ubuntu)“ $ git config --global user. Optional $ git config --global core.editor xemacs $ git config --global merge.tool meld Check settings $ git config --list Modified after “Pro Git”

Centralized Repository From “Pro Git”

Distributed Repositories From “Pro Git”

ROMS and CSTMS SVN CSTMS trunk crs branch dev3 branch dev2 branch ROMS trunk crs branch working copy crs trunk working copy Hernan trunk working copy svn copy svn checkout svn update svn commit svn checkout svn update ? ? ?

COAWST GIT crs origin/master COAWST origin/master crs master sed branch track kumar branch Warner master track kumar branch track crs branch... git fetch git pull git push git clone kumar origin/master kumar master wec branch git pull git push git fetch

Branch Development waves seds Modified after “Pro Git” Arrows point back to snapshots

First attempt Check out copy COAWST from SVN Export from SVN to gcoawst In gcoawst git init git add * git commit Make a bare repository (no working dir) git clone --bare gcoawst gcoawst.git scp –r gcoawst.git csherwood/src/gcoawst.git

First attempt, second page crs cloned it ala cloned it ala made a branch and switched to it ala added the new sediment stuff to the branch and committed it crs made a branch that tracked ala’s repo crs fetched ala’s changes crs merged them into his master crs pushed them up to the repository new users can clone/pull new sediment stuff from the repository

A few things we could not have done with SVN Made our own shared repository based on the source repo (without admin) Merged Alfredo’s branch into my branch without going to a repo Its faster… …but confusing

If we wanted to try it… Pick a stopping point…maybe make a tagged SVN release Use the tools to port the SVN history to git Let John work on it for a while, allowing people to clone it Pick a project to track, and work out the protocol for tracking branches Hey, if Linus Torvalds can do it….