From: Johannes Sixt Date: Tue, 19 Jun 2018 18:31:39 GMT Subject: Re: want option to git-rebase Message-ID: In-Reply-To: <20180619010655.GA173168@aiede.svl.corp.google.com> 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= >> >> It doesn't matter much exactly how the provided string is used. >> Any of the following would be good IMO: >> >> rebase start: > > 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