Skip to content
  • Junio C Hamano's avatar
    Allow more than true/false to attributes. · 515106fa
    Junio C Hamano authored
    
    
    This allows you to define three values (and possibly more) to
    each attribute: true, false, and unset.
    
    Typically the handlers that notice and act on attribute values
    treat "unset" attribute to mean "do your default thing"
    (e.g. crlf that is unset would trigger "guess from contents"),
    so being able to override a setting to an unset state is
    actually useful.
    
     - If you want to set the attribute value to true, have an entry
       in .gitattributes file that mentions the attribute name; e.g.
    
    	*.o	binary
    
     - If you want to set the attribute value explicitly to false,
       use '-'; e.g.
    
    	*.a	-diff
    
     - If you want to make the attribute value _unset_, perhaps to
       override an earlier entry, use '!'; e.g.
    
    	*.a	-diff
    	c.i.a	!diff
    
    This also allows string values to attributes, with the natural
    syntax:
    
    	attrname=attrvalue
    
    but you cannot use it, as nobody takes notice and acts on
    it yet.
    
    Signed-off-by: default avatarJunio C Hamano <junkio@cox.net>
    515106fa