Am 19.06.2018 um 03:06 schrieb Jonathan Nieder:
Ian Jackson wrote[1]:
git-rebase leaves entries like this in the reflog:

   c15f4d5391 HEAD@{33}: rebase: checkout 
c15f4d5391ff07a718431aca68a73e672fe8870e

It would be nice if there were an option to control this message.
Particularly, when another tool invokes git-rebase, the other tool may
specify an interesting --onto, and there is no way to record any
information about that --onto commit.

git-rebase already has a -m option, so I suggest
   --reason=<reason>

It doesn't matter much exactly how the provided string is used.
Any of the following would be good IMO:
   <reason>
   rebase start: <reason>

 From git(1):

  GIT_REFLOG_ACTION
        When a ref is updated, reflog entries are created to keep
        track of the reason why the ref was updated (which is
        typically the name of the high-level command that updated the
        ref), in addition to the old and new values of the ref. A
        scripted Porcelain command can use set_reflog_action helper
        function in git-sh-setup to set its name to this variable when
        it is invoked as the top level command by the end user, to be
        recorded in the body of the reflog.

"git rebase" sets this itself, so it doesn't solve your problem.

If it does so unconditionally, then that is a bug. If a script wants to set GIT_REFLOG_ACTION, but finds that it is already set, then it must not change the value. set_reflog_action in git-sh-setup does the right thing.

So, if there is another script or application around git-rebase, then it should just set GIT_REFLOG_ACTION (if it is not already set) and export the environment variable to git-rebase.

-- Hannes

Reply via email to