Intermediate Git Dr. Roscoe A. Bartlett Sandia National - - PowerPoint PPT Presentation

intermediate git
SMART_READER_LITE
LIVE PREVIEW

Intermediate Git Dr. Roscoe A. Bartlett Sandia National - - PowerPoint PPT Presentation

Photos placed in horizontal position with even amount of white space between photos and header Intermediate Git Dr. Roscoe A. Bartlett Sandia National Laboratories Sandia National Laboratories is a multimission laboratory managed and operated


slide-1
SLIDE 1

Photos placed in horizontal position with even amount of white space between photos and header

Sandia National Laboratories is a multimission laboratory managed and operated by National Technology and Engineering Solutions of Sandia, LLC, a wholly

  • wned subsidiary of Honeywell International, Inc., for the U.S. Department of Energy’s National Nuclear Security Administration under contract DE-NA0003525.

Intermediate Git

  • Dr. Roscoe A. Bartlett

Sandia National Laboratories

slide-2
SLIDE 2

Overview

§ Learn git as a data-structure and set of core algorithms to query and manipulate that data-structure. § The git data-structure IS the best conceptual model for git. § This data-structure can be seen in local git repo using:

§ git log --oneline --graph <ref> § gitk &

§ Adopting/adapting workflows is easier once you have a basic understanding of the git data-structure and algorithms. § Write personal cheat-sheet and memorize just the basic git commands for your adopted workflows (and Google the rest). § Each project should document commands for adopted workflows (e.g. PETSc and Trilinos).

2

slide-3
SLIDE 3

Material Presented

§ IDEAS Project What-is and How-To Documents (https://ideas- productivity.org/resources/howtos/)

§ “What is Version Control?” (just mention) § “How to Do Version Control with Git in Your CSE Project” (skim)

§ Git Tutorial and Reference Collection:

§ Critical Beginner Git Usage Tips (skim) § Visual Git Reference (in depth) § Visualizing Git Concepts with D3 (git revert, fetch, pull, push, tag) § The Git Object Model (skim)

Goal: Present some basics and gain some comfort & familiarity with these sites so that you can go back and complete the learning of the basic git data-structures and core algorithms.

3

slide-4
SLIDE 4

The Distributed Git Data-Structure

4

a47c3

tracking

b325c c10b9 HEAD master 1800b maint

  • rigin/master

releases/ release-2.4

tracking

169a6 topicA

Local branch NOT tracking remote branch …

a47c3 b325c 1800b release-2.4 release-2.5 p45tg

releases

a47c3 b325c 7ct45 master

  • rigin

local

a47c3 b325c 7ct45 master

bob

  • rigin/master

tracking

jc56m topicB

Local branch NOT replicated in other repos

Legend:

  • bjects are not in ‘local’ repo

xxxxx

  • Parts of git graph data-structure are

replicated across many repo clones.

  • New parts of graph are added in

different repos independently.

  • Parts of the graph only come together

when explicitly communicated.

  • All parts of the distributed replicated

graph may never come together!

Remote branch reference Local branch refs tracking remote branch Reference to current branch Remote branch reference Commits Parent links remote ‘origin’ remote ‘releases’ remote ‘origin’

slide-5
SLIDE 5

Summary

5

§ Learn git as a data-structure and set of core algorithms to query and manipulate that data-structure. § The git data-structure IS the best conceptual model for git. § This data-structure can be seen in local git repo using:

§ git log --oneline --graph <ref> § gitk &

§ Adopting/adapting workflows is easier once you have a basic understanding of the git data-structure and algorithms. § Write personal cheat-sheet and memorize just the basic git commands for your adopted workflows (and Google the rest). § Each project should document commands for adopted workflows (e.g. PETSc and Trilinos).