I have since reworked this script to support the short hash in the custom format as a special case: -git rev-list $merges_option --pretty=oneline --reverse --left-right --topo-order \ +format=$(git config --get rebase.instructionFormat) +no_format=$? +if test ${no_format} -ne 0 +then + format="%H %s" +elif test "${format:0:3}" != "%H " && test "${format:0:3}" != "%h " +then + format="%H ${format}" +fi +# the 'rev-list .. | sed' requires %m to parse; the instruction requires %H to parse +git rev-list $merges_option --format="%m${format}" \ + --reverse --left-right --topo-order \ I also use the $no_format variable later on in the autosquash re-ordering, and have the tests passing. I want to add some new tests on the custom format, and will send a new patch when that is complete. On Tue, Jun 9, 2015 at 3:23 PM, Junio C Hamano <gitster@xxxxxxxxx> wrote: > Johannes Schindelin <johannes.schindelin@xxxxxx> writes: > >> Besides, are you sure you don't want to substitute an empty >> rebase.instructionFormat' by '%s'? I would have expected to read >> ${format:-%s}` (note the colon), but then, this was Junio's >> suggestion... > > That was me simply being sloppy myself, expecting people not to copy > and paste literally without thinking. Thanks for noticing. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html