Introduction to distributed version control with git
|
|
- Wilfred Walker
- 5 years ago
- Views:
Transcription
1 Institut für theoretische Physik TU Clausthal
2 Inhalt 1 Basics Differences to Subversion Translation of commands 2 Config Create and clone States and workflow Remote repos Branching and merging Workflows 3 Advanced topics 4 Administration with Gitolite 5 Helpers 6 Weblinks 7 Conclusion
3 Basics Differences to Subversion Differences to Subversion: conceptual fully distributed data seen as snapshots, not differences (Subversion, Bazaar,...) optimized for branching and merging
4 Basics Differences to Subversion Differences to Subversion: practical git only adds data git uses hashes (SHA1) a lot (no revision numbers) only one.git directory
5 Basics Differences to Subversion Differences to Subversion: practical git only adds data git uses hashes (SHA1) a lot (no revision numbers) only one.git directory (nearly) every operation is local/offline multiple remote repos (origins) possible git clones whole repository including history clones are full repository backups
6 Basics Differences to Subversion Differences to Subversion: practical git only adds data git uses hashes (SHA1) a lot (no revision numbers) only one.git directory (nearly) every operation is local/offline multiple remote repos (origins) possible git clones whole repository including history clones are full repository backups branching and merging is easy and efficient every branch has its own history branching allows more efficient workflows
7 Basics Translation of commands task git svn create a repo git init svnadmin create repo git add. svn import file://repo git commit get a repo git clone URL svn checkout URL git pull svn update status/log git status/log svn status/log restore a file git checkout file svn revert file add/rm/mv file git add/rm/mv file svn add/rm/mv file commit changes git commit -a svn commit share changes git push list branches git branch svn list URL/branches/ create branch git branch BRANCH svn copy URL/trunk... git checkout BRANCH svn switch URL/branches/BRANCH merge branches git merge BRANCH svn merge -r 20:HEAD URL/branches/B
8 Basics Revision numbers Revision numbers: use tags or count commits in specific branch: git rev-list BRANCH wc -l git rev-list --reverse BRANCH grep -n HASH cut -d: -f1 or abbreviated hashes: git show --abbrev-commit BRANCH grep commit sed -e s/commit //
9 Basics nomenclature nomenclature: non-bare and bare local and remote
10 Basics nomenclature nomenclature: non-bare and bare local and remote a nonbare git project contains working copy repository (.git-directory) links to a number of bare remote reposiories (origins)
11 Config Getting started: git config --global user.name "Your Name Comes Here" git config --global user. name and mail in every commit-message
12 Config Getting started: git config --global user.name "Your Name Comes Here" git config --global user. name and mail in every commit-message get all set config variables git config --list set config, for example git config --global core.editor emacs
13 Create and clone create a project (local): git init git add. git commit -m "initial commit" clone a remote repo: git clone URL
14 States and workflow Operations between sections: source: git book (staging area can be completely ignored (git commit -a))
15 States and workflow File lifecycle: source: git book
16 States and workflow Example: basic usage git init vim readme git status git add readme git commit -m initial commit vim readme git diff git status git add readme git diff --cached git status git commit -m bla git log -p -2 vim readme git reset HEAD readme
17 Remote repos Remotes: a local repo can have more than one remote repo as origin git clone adds remote called origin list remotes: git remote -v add remote: git remote add origin-test ORIGIN-URL get all data from remote: git fetch origin-test push BRANCH to remote: git push origin-home BRANCH show info about remote: git remote show origin (git push: pushes local branches to origin) useful for: collaborative work redundancy and backup!
18 Branching and merging Branching: very efficient use as often as possible!
19 Branching and merging internal date structure: a single commit source: git book
20 Branching and merging internal date structure: multiple commits source: git book git stores data as commit objects which point to snapshot
21 Branching and merging internal date structure: a branch source: git book a branch is just a pointer to a snapshot!!!
22 Branching and merging add branch testing: git branch testing source: git book
23 Branching and merging HEAD: source: git book HEAD marks the branch that is currently checked out
24 Branching and merging checkout branch testing: git checkout testing source: git book HEAD marks the branch that is currently checked out
25 Branching and merging changes in branch testing: source: git book
26 Branching and merging git checkout master: source: git book
27 Branching and merging changes in branch master: source: git book
28 Branching and merging basic branching: initial state source: git book
29 Branching and merging basic branching: create branch iss53 git branch iss53 source: git book
30 Branching and merging basic branching: do some work in branch iss53 git checkout iss53 edit and commit changes source: git book
31 Branching and merging basic branching: make a hotfix git checkout master git checkput -b hotfix (=git branch hotfix; git checkout hotfix) edit and commit changes source: git book
32 Branching and merging basic branching: after hotfix testing hotfix was bad: make more changes and commit or throw away changes: git branch -d hotfix hotfix was good: merge with master git checkout master git merge hotfix (=fast forward merge) git branch -d hotfix source: git book
33 Branching and merging basic branching: do work on iss53 git checkout iss53 edit and commit changes source: git book
34 Branching and merging basic branching: merge iss53 into master must have common ancestors source: git book
35 Branching and merging basic branching: merge iss53 into master git checkout master git merge iss53 possible merge conflict handling (git mergetool) git branch -d iss53 source: git book
36 Branching and merging collection of commands: create branch: git branch BRANCH change to branch: git checkout BRANCH create branch and change to is: git checkout -b BRANCH remove branch: git branch -d BRANCH merge branch BRANCH with HEAD: git merge BRANCH list branches: git branch -v list merged branches: git branch merged list unmerged branches: git branch no-merged
37 Branching and merging visualization: source: git book
38 Branching and merging commit often (checkpoint commits) think of history as development journal use feature branches (the commit history can be cleaned up afterwards...)
39 Branching and merging remote branches: until now all branches local! names of remote branches have the form: ORIGIN/BRANCH local master branch is tracking remote ORIGIN/master branch get infos about remote branches: git remote show ORIGIN
40 Branching and merging remote branches: actions get/update all remote branches: git fetch ORIGIN push local branch: git push ORIGIN BRANCH push local branch to other remote branch: git push ORIGIN BRANCH:REMOTEBRANCH
41 Branching and merging remote branches: actions get/update all remote branches: git fetch ORIGIN push local branch: git push ORIGIN BRANCH push local branch to other remote branch: git push ORIGIN BRANCH:REMOTEBRANCH merge changes in remote branch into HEAD: git merge ORIGIN/REMOTEBRANCH create local tracking branch of remote branch: git checkout -b BRANCH ORIGIN/REMOTEBRANCH delete remote branch: git push ORIGIN :REMOTEBRANCH show info about remote: git remote show ORIGIN
42 Workflows Integration-Manager Workflow: source: git book 1 The project maintainer pushes to their public repository. 2 A contributor clones that repository and makes changes. 3 The contributor pushes to their own public copy. 4 The contributor asks maintainer to pull changes. 5 The maintainer adds the contributor s repo as a remote and merges locally. 6 The maintainer pushes merged/tested changes to the main repo.
43 Advanced topics advanced topics (sorted by importance): merge conflict handling staging tags rewriting history: rebasing, commit amending/squashing/reordering/splitting stashing (save unfinshed changes without commit for later use) blame, bisect (nice for debugging, error search) submodules (git repos as subdirectory of another git repo) aliases hooks
44 Administration with Gitolite adminstration of remote repository: Gitolite v3.3 at gitserver.pt.tu-clausthal.de included in backup system uses ssh user authentication via ssh-public/private key-pair access control
45 Administration with Gitolite howto: create account create new repository put existing directories and files under version control push existing local repository to new remote repo change access permissions delete repository
46 Administration with Gitolite create account: create new or use your existing ssh-pubkey (use nonempty password!) ssh-keygen -t rsa produces id_rsa (private key) and id_rsa.pub (public key) in $USER_HOME_DIR/.ssh be careful if you use multiple keys ( theowiki) send public key to Axel (NOT the private key!)
47 Administration with Gitolite create account: create new or use your existing ssh-pubkey (use nonempty password!) ssh-keygen -t rsa produces id_rsa (private key) and id_rsa.pub (public key) in $USER_HOME_DIR/.ssh be careful if you use multiple keys ( theowiki) send public key to Axel (NOT the private key!) check access with: ssh git@gitserver info hello robert, this is git@gitserver running gitolite3 v3.3-7 C CREATOR/[a-zA-Z0-9].* R W paw R W robert/rdmft R W robert/paw R W testing
48 Administration with Gitolite create new remote repository: git clone Cloning into test... Initialized empty Git repository in /home/git/repositories/robert/test.g warning: You appear to have cloned an empty repository. remote bare repository with url (initial access permissions are RW for the creator, none for others) local non-bare repository test with origin
49 Administration with Gitolite put existing directories and files under version control: create new remote repository copy files and directories to local repo add everything, commit, push
50 Administration with Gitolite push existing local repository to new remote repo: create new remote repository optional: remove old origin git remote rm origin add new remote in local repo: git remote add origin tell git to push all branches and tags: git config --add remote.origin.push +refs/heads/*:refs/ git config --add remote.origin.push +refs/tags/*:refs/t git push or push only selected branches with git push origin BRANCH
51 Administration with Gitolite change access permissions: for a wild repository (e.g. robert/test, optional): check current access permission (if empty only creator has RW): ssh git@gitserver perms -l robert/test
52 Administration with Gitolite change access permissions: for a wild repository (e.g. robert/test, optional): check current access permission (if empty only creator has RW): ssh git@gitserver perms -l robert/test add read permission for user: ssh git@gitserver perms robert/test + READERS user revoke read permission for user: ssh git@gitserver perms robert/test - READERS user add/revoke write permission for user: ssh git@gitserver perms robert/test +/- WRITERS user for other repositories: ask gitolite-admins to do it (Axel)
53 Administration with Gitolite delete remote repo: ask gitolite-admins to do it
54 Helpers graphical helpers: GNU/Linux: committing: git gui browsing, history,...: gitg - pretty, but slow with large repos gitk - very fast Mac: SourceTree GitX Android: agit
55 Weblinks Weblinks: git-svn course git book short git guide everyday-git git/docs/everyday.html cheat sheet http: //zrusin.blogspot.de/2007/09/git-cheat-sheet.html
56 Conclusion Next steps: generate ssh-keys and send them to Axel enjoy distributed version control...
57 Conclusion Next steps: generate ssh-keys and send them to Axel enjoy distributed version control... Branch and merge as often as possible! Questions?
58 Conclusion rebasing: git checkout experiment git rebase master
59 Conclusion All-day Workflow: 1 create private branch of public master branch 2 do work in private branch (implement feature, fix bug,...) 3 test commit often (checkpoint commits) feature branches 4 clean up private branch history with reset, rebase and commit amending 5 merge private into master when done commits in master should be atomic, linear, well documented (no checkpoint commits!)
GIT. CS 490MT/5555, Spring 2017, Yongjie Zheng
GIT CS 490MT/5555, Spring 2017, Yongjie Zheng GIT Overview GIT Basics Highlights: snapshot, the three states Working with the Private (Local) Repository Creating a repository and making changes to it Working
More informationVersion control with Git.
1 Version control with Git http://git-scm.com/book/en/ Basic Intro to Git We will: Discuss how Git differs from Subversion Discuss the basic Git model Pull/clone files from a repository on github Edit
More informationCS 390 Software Engineering Lecture 5 More Git
CS 390 Software Engineering Lecture 5 More Git Reference: Scott Chacon and Ben Straub, Pro Git, published by Apress, available at https://git-scm.com/book/en/v2. Outline Finish local repository Remote
More informationGETTING TO KNOW GIT: PART II JUSTIN ELLIOTT PENN STATE UNIVERSITY
GETTING TO KNOW GIT: PART II JUSTIN ELLIOTT PENN STATE UNIVERSITY 1 REVERTING CHANGES 2 REVERTING CHANGES Change local files git reset git checkout Revert a commit in the branch history git revert Reset
More informationVersion Control System - Git. zswu
Version Control System - Git zswu Overview Why VCS? Why Git? Using Git Personally Using Git with Others Etiquette Rules of Using Git Tools & Services Tips 2 Why VCS (1/3) How do you manage your homework?
More informationOutline The three W s Overview of gits structure Using git Final stuff. Git. A fast distributed revision control system
Git A fast distributed revision control system Nils Moschüring PhD Student (LMU) 1 The three W s What? Why? Workflow and nomenclature 2 Overview of gits structure Structure Branches 3 Using git Setting
More informationVersioning with git. Moritz August Git/Bash/Python-Course for MPE. Moritz August Versioning with Git
Versioning with git Moritz August 13.03.2017 Git/Bash/Python-Course for MPE 1 Agenda What s git and why is it good? The general concept of git It s a graph! What is a commit? The different levels Remote
More informationGit. A fast distributed revision control system. Nils Moschüring PhD Student (LMU)
Git A fast distributed revision control system Nils Moschüring PhD Student (LMU) Nils Moschüring PhD Student (LMU), Git 1 1 The three W s What? Why? Workflow and nomenclature 2 Overview of gits structure
More informationGit for Version Control
Git for Version Control These slides are heavily based on slides created by Ruth Anderson for CSE 390a. Thanks, Ruth! images taken from http://git-scm.com/book/en/ http://www.cs.washington.edu/403/ About
More informationIntroduction to Version Control
Research Institute for Symbolic Computation Johannes Kepler University Linz, Austria 21-Nov-2013 Outline General Remarks about Version Control 1 General Remarks about Version Control 2 Outline General
More informationSubmitting your Work using GIT
Submitting your Work using GIT You will be using the git distributed source control system in order to manage and submit your assignments. Why? allows you to take snapshots of your project at safe points
More informationComputer Science Design I Version Control with Git
Computer Science Design I Version Control with Git Department of Electrical Engineering & Computer Science Information Technology & Telecommunications Research Center The University of Kansas annguyen@ittc.ku.edu
More informationCSE 391 Lecture 9. Version control with Git
CSE 391 Lecture 9 Version control with Git slides created by Ruth Anderson & Marty Stepp, images from http://git-scm.com/book/en/ http://www.cs.washington.edu/391/ 1 Problems Working Alone Ever done one
More informationSource Code Management wih git
Source Code Management wih git Matthieu Herrb December 22 http://homepages.laas.fr/matthieu/cours/git.pdf Licence This work is licensed under a Creative Commons Attribution-ShareAlike 3. Unported License.
More informationGUIDE TO MAKE A REAL CONTRIBUTION TO AN OPEN SOURCE PROJECT 1. 1
GUIDE TO MAKE A REAL CONTRIBUTION TO AN OPEN SOURCE PROJECT 1. 1 WHO AM I? @tushar_rishav GSoC'16 student contributing to coala - a static code analysis tool, under Python So ware Foundation. A senior
More informationgit Version: 2.0b Merge combines trees, and checks out the result Pull does a fetch, then a merge If you only can remember one command:
Merge combines trees, and checks out the result Pull does a fetch, then a merge If you only can remember one command: git --help Get common commands and help git --help How to use git
More informationTopics covered. Introduction to Git Git workflows Git key concepts Hands on session Branching models. Git 2
Git Git 1 Topics covered Introduction to Git Git workflows Git key concepts Hands on session Branching models Git 2 Introduction to Git Git 3 Version control systems The source files of a project changes
More informationVersion Control. Version Control
Version Control Prepared for CS 342 - Software Design by John Bell Based on slides prepared by Jason Leigh for CS 340 University of Illinois at Chicago Version Control Incredibly important when working
More informationVersion Control: Gitting Started
ting Started Cai Li October 2014 What is Version Control? Version control is a system that records changes to a file or set of files over time so that you can recall specific versions later. Local Version
More informationgit commit --amend git rebase <base> git reflog git checkout -b Create and check out a new branch named <branch>. Drop the -b
Git Cheat Sheet Git Basics Rewriting Git History git init Create empty Git repo in specified directory. Run with no arguments to initialize the current directory as a git repository. git commit
More informationGit for Subversion users
Git for Subversion users Zend webinar, 23-02-2012 Stefan who? Stefan who? Freelancer: Ingewikkeld Stefan who? Freelancer: Ingewikkeld Symfony Community Manager Stefan who? Freelancer: Ingewikkeld Symfony
More informationIndex. Alias syntax, 31 Author and commit attributes, 334
Index A Alias syntax, 31 Author and commit attributes, 334 B Bare repository, 19 Binary conflict creating conflicting changes, 218 during merging, 219 during rebasing, 221 Branches backup, 140 clone-with-branches
More informationE, F. deleteall command, 352 directory structure, 350 export_data method, 353 inline_data method, 353 print_export method, 351 target directory, 351
Index A Access control list (ACL), 299 Ancestry references, 184 Attributes, 288 binary files, 289 export-ignore, 294 export-subst, 294 keyword expansion, 291 merge strategies, 294 Authorized_keys file,
More informationCommon Git Commands. Git Crash Course. Teon Banek April 7, Teon Banek (TakeLab) Common Git Commands TakeLab 1 / 18
Common Git Commands Git Crash Course Teon Banek theongugl@gmail.com April 7, 2016 Teon Banek (TakeLab) Common Git Commands TakeLab 1 / 18 Outline 1 Introduction About Git Setup 2 Basic Usage Trees Branches
More informationGit. Ľubomír Prda. IT4Innovations.
Git Ľubomír Prda IT4Innovations lubomir.prda@vsb.cz support@it4i.cz VCS Version Control System Versioning - creation and management of multiple releases of a product, all of which have the same general
More informationUsing Git to Manage Source RTL
Using Git to Manage Source RTL CS250 Tutorial 1 (Version 082311) August 24, 2011 Brian Zimmer How to use this tutorial This class will be using Git for all of the labs and projects. This will allow the
More informationGit. Presenter: Haotao (Eric) Lai Contact:
Git Presenter: Haotao (Eric) Lai Contact: haotao.lai@gmail.com 1 Acknowledge images with white background is from the following link: http://marklodato.github.io/visual-git-guide/index-en.html images with
More informationFundamentals of Git 1
Fundamentals of Git 1 Outline History of Git Distributed V.S Centralized Version Control Getting started Branching and Merging Working with remote Summary 2 A Brief History of Git Linus uses BitKeeper
More informationGit. A Distributed Version Control System. Carlos García Campos
Git A Distributed Version Control System Carlos García Campos carlosgc@gnome.org Carlos García Campos carlosgc@gnome.org - Git 1 A couple of Quotes For the first 10 years of kernel maintenance, we literally
More informationVersion Control with GIT
Version Control with GIT Benjamin Roth CIS LMU München Benjamin Roth (CIS LMU München) Version Control with GIT 1 / 30 Version Control Version control [...] is the management of changes to documents, computer
More informationGIT Princípy tvorby softvéru, FMFI UK Jana Kostičová,
GIT Princípy tvorby softvéru, FMFI UK Jana Kostičová, 25.4.2016 Basic features Distributed version control Developed in 2005, originally for Linux kernel development Free, GNU General Public License version
More informationGitting things done. Hands-on introduction to git niceties. Jan Urbański Ducksboard
Gitting things done Hands-on introduction to git niceties Jan Urbański jan@ducksboard.com Ducksboard Atlassian Git Party, Madrid, September 25, 2012 Jan Urbański (Ducksboard) Gitting things done Atlassian
More informationWhat is version control? (discuss) Who has used version control? Favorite VCS? Uses of version control (read)
1 For the remainder of the class today, I want to introduce you to a topic we will spend one or two more classes discussing and that is source code control or version control. What is version control?
More informationGIT for companies Mark Struberg, INSO TU Vienna
GIT for companies Mark Struberg, INSO TU Vienna What is an SCM SCM stands for Source Code Management Checkin: organized common access to sources History: who did commit which code at what time. This creates
More informationGIT FOR SYSTEM ADMINS JUSTIN ELLIOTT PENN STATE UNIVERSITY
GIT FOR SYSTEM ADMINS JUSTIN ELLIOTT PENN STATE UNIVERSITY 1 WHAT IS VERSION CONTROL? Management of changes to documents like source code, scripts, text files Provides the ability to check documents in
More informationRevision control. INF5750/ Lecture 2 (Part I)
Revision control INF5750/9750 - Lecture 2 (Part I) Problem area Software projects with multiple developers need to coordinate and synchronize the source code Approaches to version control Work on same
More informationGit Guide. Meher Krishna Patel. Created on : Octorber, 2017 Last updated : October, More documents are freely available at PythonDSP
Git Guide Meher Krishna Patel Created on : Octorber, 2017 Last updated : October, 2018 More documents are freely available at PythonDSP Table of contents Table of contents i 1 Commands Summary 1 2 Git
More informationCESSDA Expert Seminar 13 & 14 September 2016 Prague, Czech Republic
CESSDA Expert Seminar 13 & 14 September 2016 Prague, Czech Republic - basics Matthäus Zloch GESIS Outline for this session Git introduction and some theory Git command basics (plus some little advanced)
More informationGIT VERSION CONTROL TUTORIAL. William Wu 2014 October 7
GIT VERSION CONTROL TUTORIAL William Wu w@qed.ai 2014 October 7 ABOUT ME Scientific Computing Specialist background: math, cs, ee interests: machine learning, DSP, imaging, data viz, cloud work: various
More informationGit tutorial. Katie Osterried C2SM. October 22, 2015
Git tutorial Katie Osterried C2SM October 22, 2015 Outline 1 What is Git and why are we switching? 2 Working with Git 3 Branching and Merging 4 Working with remote repositories 5 Recommendations Outline
More informationPush up your code next generation version control with (E)Git
Push up your code next generation version control with (E)Git Dominik Schadow Senior Consultant Application Development dominik.schadow@trivadis.com Java Forum Stuttgart, 07.07.2011 Basel Bern Lausanne
More informationGit: Distributed Version Control
Git: Distributed Version Control Computer Science and Engineering College of Engineering The Ohio State University Lecture 3 Demo Prep: Empty (but initialized) repo Linear development: Create, edit, rename,
More informationLicense. Introduction to Version Control with Git. Local Version Control Systems. Why Use Version Control?
License Introduction to Version Control with Git Andreas Skielboe 1 Adapted by Dr. Andrew Vardy 2 All images adapted from Pro Git by Scott Chacon and released under license Creative Commons BY-NC-SA 3.0.
More informationGit. all meaningful operations can be expressed in terms of the rebase command. -Linus Torvalds, 2015
Git all meaningful operations can be expressed in terms of the rebase command -Linus Torvalds, 2015 a talk by alum Ross Schlaikjer for the GNU/Linux Users Group Sound familiar? add commit diff init clone
More informationGit version control with Eclipse (EGit) Tutorial
Git version control with Eclipse (EGit) Tutorial 출처 : Lars Vogel http://www.vogella.com/tutorials/eclipsegit/article.html Lars Vogel Version 3.6 Copyright 2009, 2010, 2011, 2012, 2013, 2014 Lars Vogel
More informationGit for Newbies. ComMouse Dongyue Studio
Git for Newbies ComMouse Dongyue Studio 2018.4.25 Contents What is Git? Git Quick Start Git Branch Git Workflow Git in Practice What is Git? What is Git? A Version Control System (VCS) An Open-sourced
More informationChapter 5. Version Control: Git
Chapter 5 Version Control: Git The Replication Crisis continues to heat up discussion across social science. Hence principled researchers want to make their work easy to replicate and reputable journals
More informationDistributed Version Control (with Git)
Distributed Version Control (with Git) Introduction and Tutorial fhlug 24. 03. 2011 Why Distributed? No single point of failure Automatic backups Fast local operations (log, diff, checkout, ) Authenticity
More informationGIT CHEAT SHEET. CONFIG --global => write to ~/.gitconfig, otherwise to.git/config. git config [--global] -l git config [--global] -e
A DIFF GET DISPLAY INFOS / INSPECTION / COMPARISON LIST WORK WH GUI LOG LOG HISTORIC STATUS ADD TRACK GET / CREATION CLONE INIT V1.2 esnault.jerome@gmail.com SET / UNSET git config [--global] section.item
More informationEECS 470 Lab 4. Version Control System. Friday, 31 st January, 2014
EECS 470 Lab 4 Version Control System Department of Electrical Engineering and Computer Science College of Engineering University of Michigan Friday, 31 st January, 2014 (University of Michigan) Lab 4:
More informationAdvanced Operating Systems Control Versioning with GIT. Giuseppe Massari
Control Versioning with GIT Giuseppe Massari giuseppe.massari@polimi.it Outline 2/54 Why using version control tools? Why Git? First steps Getting help and configuration Basic concepts Local repository
More informationAssumptions. GIT Commands. OS Commands
Many of the world s largest dev teams have adopted Git and it s not hard to see why It can handle small and large projects easily It has a tiny footprint It outclasses other version control tools It s
More informationSoftware Development I
6.148 Software Development I Two things How to write code for web apps. How to collaborate and keep track of your work. A text editor A text editor A text editor Anything that you re used to using Even
More informationVersion Control with Git
Version Control with Git Jon Loeliger O'REILLY Beijing Cambridge Farnham Köln Sebastopol Tokyo Table of Contents Preface... xi 1. Introduction... 1 Background 1 The Birth of Git 2 Precedents 4 Time Line
More informationWhat is git? Distributed Version Control System (VCS); Created by Linus Torvalds, to help with Linux development;
What is git? Distributed Version Control System (VCS); Created by Linus Torvalds, to help with Linux development; Why should I use a VCS? Repositories Types of repositories: Private - only you and the
More informationTutorial: Getting Started with Git. Introduction to version control Benefits of using Git Basic commands Workflow
Tutorial: Getting Started with Git Introduction to version control Benefits of using Git Basic commands Workflow http://xkcd.com/1597/ 2 Tutorial Objectives Fundamentals of how git works Everything you
More informationGit Workflows. Sylvain Bouveret, Grégory Mounié, Matthieu Moy
s Sylvain Bouveret, Grégory Mounié, Matthieu Moy 2017 [first].[last]@imag.fr http://recherche.noiraudes.net/resources/git/git-workflow-slides.pdf 1 / 16 Goals of the presentation Global history: multiple
More informationLab Exercise Git: A distributed version control system
Lunds tekniska högskola Datavetenskap, Nov 21, 2016 EDAF45 Programvaruutveckling i grupp projekt Labb 2 (Git): Labbhandledning Checked on Git versions: 2.7.4 Lab Exercise Git: A distributed version control
More informationLAB MANUAL GIT BY PRATIK JAIN. To start with git bash, we need to authenticate ourselves so that for every commit, git can use this information.
LAB MANUAL GIT BY PRATIK JAIN STARTING WITH GIT : To start with git bash, we need to authenticate ourselves so that for every commit, git can use this information. We can remove -- global option to override
More informationGit: Distributed Version Control
Git: Distributed Version Control Computer Science and Engineering College of Engineering The Ohio State University Lecture 3 What Does "D" Stand For? Distributed version control Multiple people, distributed
More informationGit(Lab) Tutorial and Hands-On
Git(Lab) Tutorial and Hands-On Analysis Workshop 34th KATRIN Collaboration Meeting Institut für Kernphysik WWU Münster 21.02.2018 Git(Lab) Tutorial and Hands-On Or: Why branches aren t homeomorphic endofunctors
More informationIntroduction to Version Control with Git
Introduction to Version Control with Git Dark Cosmology Centre Niels Bohr Institute License All images adapted from Pro Git by Scott Chacon and released under license Creative Commons BY-NC-SA 3.0. See
More informationUSING GIT FOR AUTOMATION AND COLLABORATION JUSTIN ELLIOTT - MATT HANSEN PENN STATE UNIVERSITY
USING GIT FOR AUTOMATION AND COLLABORATION JUSTIN ELLIOTT - MATT HANSEN PENN STATE UNIVERSITY AGENDA Version control overview Introduction and basics of Git Advanced Git features Collaboration Automation
More informationVersion Control. Version Control
Version Control CS440 Introduction to Software Engineering John Bell Based on slides prepared by Jason Leigh for CS 340 University of Illinois at Chicago Version Control Incredibly important when working
More information[Software Development] Development Tools. Davide Balzarotti. Eurecom Sophia Antipolis, France
[Software Development] Development Tools Davide Balzarotti Eurecom Sophia Antipolis, France Version Control Version (revision) control is the process of tracking and recording changes to files Most commonly
More informationHow to be a git. Dominic Mitchell
How to be a git Dominic Mitchell Git! It s new! Everybody s talking about it! What is it? Distributed Version Control Why Git? Fast Local Toolkit Widely used Github Toolkit lets other people build tools
More informationINET
INET Framework@GitHub Proposal: How to Collaborate on Model Development Andras Varga, Rudolf Hornig INET: Current Stand Several branches in private repositories i Several extensions various web sites Patches,
More informationCS 520: VCS and Git. Intermediate Topics Ben Kushigian
CS 520: VCS and Git Intermediate Topics Ben Kushigian https://people.cs.umass.edu/~rjust/courses/2017fall/cs520/2017_09_19.zip Our Goal Our Goal (Overture) Overview the basics of Git w/ an eye towards
More informationAlgorithm Engineering
Algorithm Engineering Jens K. Mueller jkm@informatik.uni-jena.de Department of Mathematics and Computer Science Friedrich Schiller University Jena Tuesday 21 st October, 2014 Version Control with Git Version
More informationRevision Control. An Introduction Using Git 1/15
Revision Control An Introduction Using Git 1/15 Overview 1. What is revision control? 2. 30,000 foot view 3. Software - git and gitk 4. Setting up your own repository on onyx 2/15 What is version control?
More informationUSPAS Simulation of Beam and Plasma Systems Steven M. Lund, Jean-Luc Vay, Remi Lehe, Daniel Winklehner and David L. Bruhwiler Lecture: Software Version Control Instructor: David L. Bruhwiler Contributors:
More informationAbout SJTUG. SJTU *nix User Group SJTU Joyful Techie User Group
About SJTUG SJTU *nix User Group SJTU Joyful Techie User Group Homepage - https://sjtug.org/ SJTUG Mirrors - https://mirrors.sjtug.sjtu.edu.cn/ GitHub - https://github.com/sjtug Git Basic Tutorial Zhou
More informationGit Magic: Versioning Files Like a Boss. Tommy MacWilliam
Git Magic: Versioning Files Like a Boss Tommy MacWilliam tmacwilliam@cs50.net Today setting up like a boss basic git like a boss using branches like a boss reverting changes like a boss collaborating like
More informationA BASIC UNDERSTANDING OF VERSION CONTROL
A BASIC UNDERSTANDING OF VERSION CONTROL DID YOU EVER DO THIS? DID YOU EVER DO THIS? DID YOU EVER DO THIS? DID YOU EVER DO THIS? DID YOU EVER DO THIS? DID YOU EVER DO THIS? DID YOU EVER DO THIS? DID YOU
More informationA quick (and maybe practical) guide to Git and version control. By Jay Johnson
A quick (and maybe practical) guide to Git and version control By Jay Johnson Necessary shout outs and reference links from slides from CSE 380 with Dr. Chris Simmons (UT-Austin) and notes from Prof. Jean-Luc
More informationGit AN INTRODUCTION. Introduction to Git as a version control system: concepts, main features and practical aspects.
Git AN INTRODUCTION Introduction to Git as a version control system: concepts, main features and practical aspects. How do you share and save data? I m working solo and I only have one computer What I
More information! #Running this command from the top directory of your project will add all your changes."! $ git add."
********************************* ********************************* ** ** ** Git Toolkit ** ** ** ********************************* ********************************* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
More informationSoftware Revision Control for MASS. Git Installation / Configuration / Use
Software Revision Control for MASS Git Installation / Configuration / Use Matthew Sell, CSSE Student MASS Research Participant, February 2014 Overview Download / execute installer Initial configuration
More informationGit Introduction CS 400. February 11, 2018
Git Introduction CS 400 February 11, 2018 1 Introduction Git is one of the most popular version control system. It is a mature, actively maintained open source project originally developed in 2005 by Linus
More informationGit AN INTRODUCTION. Introduction to Git as a version control system: concepts, main features and practical aspects.
Git AN INTRODUCTION Introduction to Git as a version control system: concepts, main features and practical aspects. How do you share and save data? I m working solo and I only have one computer What I
More informationWorking in Teams CS 520 Theory and Practice of Software Engineering Fall 2018
Working in Teams CS 520 Theory and Practice of Software Engineering Fall 2018 Version Control September 18, 2018 Thursday (September 20) First in-class exercise On using git (today is a prelude with useful
More informationGetting the Source Code
Getting the Source Code The CORD source code is available from our Gerrit system at gerrit.opencord.org. Setting up a Gerrit account and ssh access will also enable you to submit your own changes to CORD
More informationBeyond git add/commit/push
add Working dir commit Staging area push Local Remote Based on original version made by Alexis López @aa_lopez About us @tuxtor @edivargas jorgevargas.mx github.com/tuxtor Review traditionals commands
More informationImproving Your Life With Git
Improving Your Life With Git Lizzie Lundgren elundgren@seas.harvard.edu Graduate Student Forum 26 April 2018 Scenarios to Avoid My code was deleted from 90-day retention! Crap, I can t remember what I
More informationCPSC 491. Lecture 19 & 20: Source Code Version Control. VCS = Version Control Software SCM = Source Code Management
CPSC 491 Lecture 19 & 20: Source Code Version Control VCS = Version Control Software SCM = Source Code Management Exercise: Source Code (Version) Control 1. Pretend like you don t have a version control
More informationRevision Control and GIT
Revision Control and GIT On UD HPC Community Clusters William Totten Network & Systems Services Why use revision control You can go back in time It makes it easy to try things out which might not work
More informationVCS VERSION CONTROL SYSTEMS
VCS VERSION CONTROL SYSTEMS http://goo.gl/1tc7oh http://waynelkh.github.io/sa-git 1 WHO AM I? NCTU-CSCC TA wnlee 2 WHAT IS "VERION CONTROL" Version control is a system that records changes to a file or
More informationRevision control Advanced git
Revision control Advanced git Waterford Institute of Technology April 30, 2016 John Fitzgerald Waterford Institute of Technology, Revision controladvanced git 1/35 Presentation outline Estimated duration
More informationAbout the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. Gerrit
Gerrit About the Tutorial Gerrit is a web-based code review tool, which is integrated with Git and built on top of Git version control system (helps developers to work together and maintain the history
More informationBasic git. Interactive.
1 / 45 Basic git. Interactive. Emanuele Olivetti 1 Rike-Benjamin Schuppner 2 1 NeuroInformatics Laboratory (NILab) Bruno Kessler Foundation (FBK), Trento, Italy Center for Mind and Brain Sciences (CIMeC),
More informationLab Objective. Lab Assignment. Downloads and Installation
How I Start Working with Git: Git Lab 01 Adapted from: (1) https://github.com/quantstack/xeus-cling (2) https://code.visualstudio.com/docs/languages/cpp Lab Objective 1. Installing and using VS Code 2.
More informationGit! Fundamentals. IT Pro Roundtable! June 17, 2014!! Justin Elliott! ITS / TLT! Classroom and Lab Computing!! Michael Potter!
Git! Fundamentals IT Pro Roundtable! June 17, 2014!! Justin Elliott! ITS / TLT! Classroom and Lab Computing!! Michael Potter! IT Communications 1 What is Version Control? Version Control System (VCS)!
More informationTools for software development:
Tools for software development: Version Control System Source Control Management Repository commit An introduction push Data Processing Course, V. Lafage, IPN Orsay V. Lafage @ Data Processing Course 2019
More informationGit: (Distributed) Version Control
Git: (Distributed) Version Control Computer Science and Engineering College of Engineering The Ohio State University Lecture 6 The Need for Version Control Track evolution of a software artifact Development
More informationAn introduction to git
An introduction to git Olivier Berger olivier.berger@telecom-sudparis.eu 2012-12-06 Adapted from "git concepts simplified" by Sitaram Chamarty, sitaramc@gmail.com http://sitaramc.github.com/gcs/ 1 / 52
More information1/20/13 Git tutorial. Git tutorial. Mike Nolta. file:///users/nolta/github/reveal.js/git.html?print-paper#/ 1/31
Git tutorial Mike Nolta file:///users/nolta/github/reveal.js/git.html?print-paper#/ 1/31 1. Basics file:///users/nolta/github/reveal.js/git.html?print-paper#/ 2/31 Tell git who you are $ git config --global
More informationAdvanced Git. Luc Sarzyniec. Xilopix, February / 88
Advanced Git Luc Sarzyniec Xilopix, February 2015 1 / 88 About This slides are using resources from the Pro Git book [isbn:1430218339] which is licensed under the Creative Commons v3.0 (by-nc-sa) license.
More informationManaging Source Code With Subversion
Managing Source Code With Subversion February 3rd, 2005: phpmelb Source Code Management Source Code Management systems (SCMs) rock. Definitely the single most useful tool for a development team, ranking
More informationFebruary 2 nd Jean Parpaillon
Using GIT with Kerrighed project Kerrighed Summit '07 February 2 nd 2007 Jean Parpaillon Table of contents Kerrighed SCM Subversion GIT GIT with Kerrighed References 2 Kerrighed
More informationCreating a Patch. Created by Carl Heymann on 2010 Sep 14 1
Created by on 2010 Sep 14 1 1. Starting a Patch To create a patch, and get it through the review process and into a main branch of a project, you can follow the following steps: Clone the project if you
More information