105
Versions all the way down Versioning commits and patches with git-series Josh Triplett [email protected] LinuxCon North America 2016

Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett [email protected] LinuxCon North

  • Upload
    others

  • View
    9

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Versions all the way downVersioning commits and patches with git-series

Josh [email protected]

LinuxCon North America 2016

Page 2: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North
Page 3: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

RFC: feature

Page 4: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

RFC: feature

Page 5: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Development

Page 6: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git commit

Page 7: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git format-patch -3

[PATCH 1/3] Cleanup and yak shaving

[PATCH 2/3] Implement feature

[PATCH 3/3] Use feature

Page 8: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git format-patch -3

[PATCH 1/3] Cleanup and yak shaving

[PATCH 2/3] Implement feature

[PATCH 3/3] Use feature

Page 9: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git request-pull ...

git hub pull new ...

Page 10: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git request-pull ...

git hub pull new ...

Page 11: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Feedback

Split cleanup and yak shaving

Additional use of feature

Add benchmark data

Add tests

Fix typo

Page 12: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Feedback

Split cleanup and yak shaving

Additional use of feature

Add benchmark data

Add tests

Fix typo

Page 13: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Feedback

Split cleanup and yak shaving

Additional use of feature

Add benchmark data

Add tests

Fix typo

Page 14: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Feedback

Split cleanup and yak shaving

Additional use of feature

Add benchmark data

Add tests

Fix typo

Page 15: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Feedback

Split cleanup and yak shaving

Additional use of feature

Add benchmark data

Add tests

Fix typo

Page 16: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Rewriting history

Page 17: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git commit --amend

Page 18: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git rebase -i

Page 19: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

“fast-forward” vs “non-fast-forward”

Page 20: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git format-patch -v2 -6

[PATCH v2 1/6] Cleanup

[PATCH v2 2/6] Yak shaving

[PATCH v2 3/6] Implement feature

[PATCH v2 4/6] Tests for feature

[PATCH v2 5/6] Use feature

[PATCH v2 6/6] Use feature elsewhere

Page 21: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git format-patch -v2 -6

[PATCH v2 1/6] Cleanup

[PATCH v2 2/6] Yak shaving

[PATCH v2 3/6] Implement feature

[PATCH v2 4/6] Tests for feature

[PATCH v2 5/6] Use feature

[PATCH v2 6/6] Use feature elsewhere

Page 22: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

What about v1?

Page 23: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git reflog

Page 24: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

mutt -f =Sent

Page 25: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Public mailing list archives

Page 26: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Git tracks history

Page 27: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

We rewrite history

Page 28: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

We need the history of history

Page 29: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git submodule

-- --fthagn

Page 30: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git submodule -- --fthagn

Page 31: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Two common solutions

Pull one of the histories out of git

Page 32: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Two common solutions

Pull one of the histories out of git

Page 33: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Pull the patches out of git

Page 34: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

quilt patch files

Page 35: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

debian/patches/*

Page 36: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git rebase -i

Page 37: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Pull the history of the patches out of git

Page 38: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Versioned branch names

Page 39: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

feature-v1

feature-v2

feature-v3-typofix

feature-v8-rebased-4.6-alice-fix

feature-v8-rebased-4.6-alice-fix.pptx

Page 40: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

feature-v1

feature-v2

feature-v3-typofix

feature-v8-rebased-4.6-alice-fix

feature-v8-rebased-4.6-alice-fix.pptx

Page 41: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

feature-v1

feature-v2

feature-v3-typofix

feature-v8-rebased-4.6-alice-fix

feature-v8-rebased-4.6-alice-fix.pptx

Page 42: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

feature-v1

feature-v2

feature-v3-typofix

feature-v8-rebased-4.6-alice-fix

feature-v8-rebased-4.6-alice-fix.pptx

Page 43: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

feature-v1

feature-v2

feature-v3-typofix

feature-v8-rebased-4.6-alice-fix

feature-v8-rebased-4.6-alice-fix.pptx

Page 44: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

We have a version control system!

Page 45: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Cover letter

[PATCH v2 0/5] feature: summary of new idea

Page 46: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Cover letter

[PATCH v2 0/5] feature: summary of new idea

Page 47: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Base

git format-patch -3

git format-patch -v2 -6

git rebase -i ...

git log

Page 48: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Base

git format-patch -3

git format-patch -v2 -6

git rebase -i ...

git log

Page 49: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Base

git format-patch -3

git format-patch -v2 -6

git rebase -i ...

git log

Page 50: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Base

git format-patch -3

git format-patch -v2 -6

git rebase -i ...

git log

Page 51: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Collaboration

Page 52: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

“Never rewrite published history”

Page 53: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

How can you collaborate on it?

Page 54: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Patch series

Feature backport

Distribution package

Page 55: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Patch series

Feature backport

Distribution package

Page 56: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Patch series

Feature backport

Distribution package

Page 57: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git-series

Tracks the history of a patch series

Handles non-fast-forwarding changes

Tracks a cover letter

Tracks the base of the series

Page 58: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git-series

Tracks the history of a patch series

Handles non-fast-forwarding changes

Tracks a cover letter

Tracks the base of the series

Page 59: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git-series

Tracks the history of a patch series

Handles non-fast-forwarding changes

Tracks a cover letter

Tracks the base of the series

Page 60: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git-series

Tracks the history of a patch series

Handles non-fast-forwarding changes

Tracks a cover letter

Tracks the base of the series

Page 61: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git-series

Tracks the history of a patch series

Handles non-fast-forwarding changes

Tracks a cover letter

Tracks the base of the series

Page 62: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Demo

Page 63: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Internals

INTERNALS.mdhttps://github.com/git-series/git-series/blob/master/INTERNALS.md

Page 64: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Internals

INTERNALS.mdhttps://github.com/git-series/git-series/blob/master/INTERNALS.md

Page 65: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Review of git internals

blob (file)

tree (directory)

commit (tree, message, parents)

tag

ref

Page 66: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Review of git internals

blob (file)

tree (directory)

commit (tree, message, parents)

tag

ref

Page 67: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Review of git internals

blob (file)

tree (directory)

commit (tree, message, parents)

tag

ref

Page 68: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Review of git internals

blob (file)

tree (directory)

commit (tree, message, parents)

tag

ref

Page 69: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Review of git internals

blob (file)

tree (directory)

commit (tree, message, parents)

tag

ref

Page 70: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Review of git internals

blob (file)

tree (directory)

commit (tree, message, parents)

tag

ref

Page 71: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

trees can refer to commits

“gitlink”

Page 72: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

trees can refer to commits

“gitlink”

Page 73: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Requirement: Every object must remain reachable by git.

Required to keep git from pruning objects

Required for push/pull of series

Page 74: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Requirement: Every object must remain reachable by git.

Required to keep git from pruning objects

Required for push/pull of series

Page 75: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

upstream x

upstream y

v1 b

v1 a

v2 b

v2 a

series v1 series v2 refs/heads/git-series/feature

series

base

series

base

cover letter blob

cover

Page 76: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

upstream x

upstream y

v1 b

v1 a

v2 b

v2 a

series v1 series v2

refs/heads/git-series/feature

series

base

series

base

cover letter blob

cover

Page 77: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

upstream x

upstream y

v1 b

v1 a

v2 b

v2 a

series v1 series v2 refs/heads/git-series/feature

series

base

series

base

cover letter blob

cover

Page 78: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

upstream x

upstream y

v1 b

v1 a

v2 b

v2 a

series v1 series v2 refs/heads/git-series/feature

series

base

series

base

cover letter blob

cover

Page 79: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

upstream x

upstream y

v1 b

v1 a

v2 b

v2 a

series v1 series v2 refs/heads/git-series/feature

series

base

series

base

cover letter blob

cover

Page 80: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

upstream x

upstream y

v1 b

v1 a

v2 b

v2 a

series v1 series v2 refs/heads/git-series/feature

series

base

series

base

cover letter blob

cover

Page 81: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

upstream x

upstream y

v1 b

v1 a

v2 b

v2 a

series v1 series v2 refs/heads/git-series/feature

series

base

series

base

cover letter blob

cover

Page 82: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

upstream x

upstream y

v1 b

v1 a

v2 b

v2 a

series v1 series v2 refs/heads/git-series/feature

series

base

series

base

cover letter blob

cover

Page 83: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git doesn’t follow gitlinks for reachability or push/pull

Have to also include “series” as a parent

git-series ignores that parent when traversing

Page 84: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git doesn’t follow gitlinks for reachability or push/pull

Have to also include “series” as a parent

git-series ignores that parent when traversing

Page 85: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git doesn’t follow gitlinks for reachability or push/pull

Have to also include “series” as a parent

git-series ignores that parent when traversing

Page 86: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

HEAD → Current branch

refs/SHEAD → Current series

Page 87: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

HEAD → Current branch

refs/SHEAD → Current series

Page 88: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Working and staged (as seen in status)?

refs/git-series-internals/working/feature

refs/git-series-internals/staged/feature

Page 89: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Working and staged (as seen in status)?

refs/git-series-internals/working/feature

refs/git-series-internals/staged/feature

Page 90: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Avoiding errors

Page 91: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Long and complex error messages

suggest a design flaw

Redesign to make the error impossible

Page 92: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Long and complex error messagessuggest a design flaw

Redesign to make the error impossible

Page 93: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Long and complex error messagessuggest a design flaw

Redesign to make the error impossible

Page 94: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Detach from a series or check out a newseries with uncommitted changes to the

series (series, base, cover)

Every series has its own independentworking and staged versions

Page 95: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Detach from a series or check out a newseries with uncommitted changes to the

series (series, base, cover)

Every series has its own independentworking and staged versions

Page 96: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Detach from a series or check out a newseries without making any commits

git series start makes working/staged“(new, no commits yet)”

git series checkout works

Page 97: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Detach from a series or check out a newseries without making any commits

git series start makes working/staged

“(new, no commits yet)”git series checkout works

Page 98: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Detach from a series or check out a newseries without making any commits

git series start makes working/staged“(new, no commits yet)”

git series checkout works

Page 99: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Detach from a series or check out a newseries without making any commits

git series start makes working/staged“(new, no commits yet)”

git series checkout works

Page 100: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Long and complex error messagessuggest a design flaw

Redesign to make the error impossible

Page 101: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git series rebase

git rebase --continue

Page 102: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

git series rebase

git rebase --continue

Page 103: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

Rust and libgit2

Page 104: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

https://github.com/git-series/git-series

Questions?

Page 105: Versions all the way down - events.static.linuxfound.org · Versions all the way down Versioning commits and patches with git-series Josh Triplett josh@joshtriplett.org LinuxCon North

https://github.com/git-series/git-series

Questions?