On Wed, Jan 25, 2017 at 4:50 AM, Nguyễn Thái Ngọc Duy <pclouds@xxxxxxxxx> wrote: > Behavior change: "--exclude --blah --remotes" will not exclude remote > branches any more. Only "--exclude --remotes" does. > > This is because --exclude is going to have a new friend --decorate-reflog > who haves the same way. When you allow a distant --remotes to complement > a previous option, things get complicated. In > > --exclude .. --decorate-reflog ... --remotes > > Does it mean decorate remote reflogs, or does it mean exclude remotes > from the selected revisions? > > Granted, there may be valid use cases for such a combination (e.g. > "decorate all reflogs except remote ones") but I feel option order is > not a good fit to express them. > Limiting the scope of the exclude seems somewhat reasonable to me, because it makes it much easier to explain and show the user. We do need to make sure it's not going to break any scripts or other issues. Is it possible for us to produce an error if the user does "--exclude" without a necessary connecting option? Thanks, Jake