Skip to content
  • Jeff King's avatar
    branch: let branch filters imply --list · d0403508
    Jeff King authored and Junio C Hamano's avatar Junio C Hamano committed
    
    
    Currently, a branch filter like `--contains`, `--merged`, or
    `--no-merged` is ignored when we are not in listing mode.
    For example:
    
      git branch --contains=foo bar
    
    will create the branch "bar" from the current HEAD, ignoring
    the `--contains` argument entirely. This is not very
    helpful. There are two reasonable behaviors for git here:
    
      1. Flag an error; the arguments do not make sense.
    
      2. Implicitly go into `--list` mode
    
    This patch chooses the latter, as it is more convenient, and
    there should not be any ambiguity with attempting to create
    a branch; using `--contains` and not wanting to list is
    nonsensical.
    
    That leaves the case where an explicit modification option
    like `-d` is given.  We already catch the case where
    `--list` is given alongside `-d` and flag an error. With
    this patch, we will also catch the use of `--contains` and
    other filter options alongside `-d`.
    
    Signed-off-by: default avatarJeff King <peff@peff.net>
    Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
    d0403508