On Tue, Jan 31, 2017 at 03:00:33PM +0100, Cornelius Weig wrote: > Concerning branches, I fully agree. For git-branch, the > "--no-create-reflog" option does not make sense at all and should > produce an error. > > On the other hand, for tags it may make sense to override > logAllRefUpdates=always. As tag updates come exclusively from > force-creating the same tag on another revision, a reflog will actually > not be created by accident. Hmm. I think you could also see tag creation and update via "git fetch", though only with explicit refspecs, I think, not tag-following. So I think ultimately you'd need to use "git -c logallrefupdates=false" if you want to override reflog options for all commands. A saner interface would probably be put teaching the ref code to respect a configured list of exceptions ("I do want reflogs for refs/tags/, but not for refs/foo/"). But I don't think it's sensible for anybody to go to the work of doing that, given that I haven't heard a single useful reason for --no-create-reflog in the first place. Personally, I'd be fine with leaving it in its current state as a known bug that somebody may fix later, if they actually care. But if it is not too hard to fix while we are all thinking about it, we can do that. -Peff