• Show log

    Commit

  • Hash : e1ac0101
    Author : Carlos Martín Nieto
    Date : 2014-11-08T14:40:53

    odb: hardcode the empty blob and tree
    
    git hardocodes these as objects which exist regardless of whether they
    are in the odb and uses them in the shell interface as a way of
    expressing the lack of a blob or tree for one side of e.g. a diff.
    
    In the library we use each language's natural way of declaring a lack of
    value which makes a workaround like this unnecessary. Since git uses it,
    it does however mean each shell application would need to perform this
    check themselves.
    
    This makes it common work across a range of applications and an issue
    with compatibility with git, which fits right into what the library aims
    to provide.
    
    Thus we introduce the hard-coded empty blob and tree in the odb
    frontend. These hard-coded objects are checked for before going to the
    backends, but after the cache check, which means the second time they're
    used, they will be treated as normal cached objects instead of creating
    new ones.