Skip to content
  • Jehan Bing's avatar
    Add a setting to require a filter to be successful · 36daaaca
    Jehan Bing authored and Junio C Hamano's avatar Junio C Hamano committed
    
    
    By default, a missing filter driver or a failure from the filter driver is
    not an error, but merely makes the filter operation a no-op pass through.
    This is useful to massage the content into a shape that is more convenient
    for the platform, filesystem, and the user to use, and the content filter
    mechanism is not used to turn something unusable into usable.
    
    However, we could also use of the content filtering mechanism and store
    the content that cannot be directly used in the repository (e.g. a UUID
    that refers to the true content stored outside git, or an encrypted
    content) and turn it into a usable form upon checkout (e.g. download the
    external content, or decrypt the encrypted content).  For such a use case,
    the content cannot be used when filter driver fails, and we need a way to
    tell Git to abort the whole operation for such a failing or missing filter
    driver.
    
    Add a new "filter.<driver>.required" configuration variable to mark the
    second use case.  When it is set, git will abort the operation when the
    filter driver does not exist or exits with a non-zero status code.
    
    Signed-off-by: default avatarJehan Bing <jehan@orb.com>
    Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
    36daaaca