chiark / gitweb /
fd3dc6382603b736df568e6991f3ab4cf230ce8a
[talk-2018-dc18-gdr.git] / demo.txt
1 From: Sean Whitton <spwhitton@spwhitton.name>
2 To: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 Subject: new version to print
4 Date: Sun, 29 Jul 2018 18:49:36 +0800
5
6 Hello,
7
8 At David's suggestion added: point out that the commit of d/patches has
9 gone after the debrebase.
10
11 Before talk:
12 - cd ~/src/helm
13 - reset to what I dgit pushed most recently (6282cfd4)
14 - open =gitk --first-parent=
15 - ensure the git stash is poppable on top of the right commit
16
17 Demo:
18 - from the "Update to upstream 2.9.7 commit" onwards, describe the commits
19   + mixture of packaging commits, patches to upstream, auto commits
20   + the top two commits pseudomerge over previous upload
21   + that happened because I only just switched this package to use
22     git-debrebase
23
24 - note that in this example the patches do not appear at the end of
25   the history.  This is because I did not debrebase before uploading.
26
27 - run: =git log --oneline v2.9.7..debian/2.9.7-1 -- . ':!debian'=
28
29 - we can see that there are four commits that change the upstream
30   source, i.e. we have a delta queue of length 4
31
32 - now: magit log on the file README.md to show how it's a completely
33   normal git log with the Debian commit on the top
34
35 - my goal for this demo here is to make a change to the upstream
36   source, and then rearrange the delta queue such that this change
37   appears second in the queue, right before the README decruft
38   + you might want to do this because you want to add other patches
39     that build on this one
40
41 - I prepared a commit to patch the upstream source and add a changelog
42   entry, I'll just pop it from my git stash stack
43
44 - let's commit
45   + =git diff=
46   + =git commit -a -m "be more excited about helm"=
47
48 - refresh gitk and show the new mixed commit
49
50 - alright, now it's time to debrebase because things are a bit of a mess
51   + =git debrebase -i=
52   + move the commit to the right place, =C-c C-c=
53   + refresh gitk
54   + count the five commits to upstream source and look at the change
55     we made
56   + we now have two "be more excited by helm" commits
57   + and the auto commit of debian/patches has been stripped out
58   + and the delta queue is at the end of the branch
59
60 - from here, you can type =dgit push-source= to upload, and you will
61   get a =debian/patches= that exactly matches these five commits
62
63 - or if we need to push to salsa, =git debrebase conclude= will get us
64   something that is a fast-forward of what we had before
65   + kill gitk
66   + git debrebase conclude
67   + gitk --date-order
68   + now we see exactly what we had before =git debrebase conclude=
69     except it is a FF of what we had before, so we can push to salsa
70
71 Prep:
72 - Cables.
73 - Check readability of gitk, term and Emacs -- might want to bump font sizes.
74
75 -- 
76 Sean Whitton