Hi Stefan, On Fri, 4 May 2018, Stefan Beller wrote: > > Branch-diff vs v1: > > 1: 42db734a980 ! 1: 73398da7119 sequencer: learn about the special "fake root commit" handling > > @@ -54,40 +54,50 @@ > > return NULL; > > } > > > > ++/* Read author-script and return an ident line (author <email> timestamp) */ > > +static const char *read_author_ident(struct strbuf *buf) > > > I like the new way of read_author_ident. Thanks for writing it! You're welcome. After sleeping a night over it, I think this function might also benefit from a new name: extract_ident_from_author_script(). What do you think? > > @@ -159,7 +169,17 @@ > > +/* Does this command create a (non-merge) commit? */ > > +static int is_pick_or_similar(enum todo_command command) > > +{ > > -+ return command <= TODO_SQUASH; > > ++ switch (command) { > > ++ case TODO_PICK: > > ++ case TODO_REVERT: > > ++ case TODO_EDIT: > > ++ case TODO_REWORD: > > ++ case TODO_FIXUP: > > ++ case TODO_SQUASH: > > ++ return 1; > > ++ default: > > ++ return 0; > > ++ } > > The switch case is not as bad as I thought following the discussion on of v1. Yes, it makes things explicit, and it is not too long a case-chain. > This series is > Reviewed-by: Stefan Beller <sbeller@xxxxxxxxxx> Thanks! > <off topic> > During a lunch discussion I wondered if the branch diff format could lead to > another form of machine readable communication, i.e. if we want to add the > ability to read the branch diff format and apply the changes. Note how applying > this diff-diff would not create new commits, but rather amend existing commits. </off topic> (which BTW is not valid XML) I do not think that it would be a wise idea to detour even further from Git when exchanging patch series iterations. We have a lovely way to exchange commits, after all: `git fetch` and `git push`, and for times you cannot agree on a central server, `git bundle`. Ciao, Dscho