Skip to content
  • Joey Hess's avatar
    support pointer files · 664cc987
    Joey Hess authored
    Backend.lookupFile is changed to always fall back to catKey when
    operating on a file that's not a symlink.
    
    catKey is changed to understand pointer files, as well as annex symlinks.
    
    Before, catKey needed a file mode witness, to be sure it was looking at a
    symlink. That was complicated stuff. Now, it doesn't actually care if a
    file in git is a symlink or not; in either case asking git for the content
    of the file will get the pointer to the key.
    
    This does mean that git-annex will treat a link
    foo -> WORM--bar as a git-annex file, and also treats
    a regular file containing annex/objects/WORM--bar as a git-annex file.
    
    Calling catKey could make git-annex commands need to do more work than
    before. This would especially be the case if a repo contained many regular
    files, and only a few annexed files, as now git-annex will need to ask
    git about the contents of the regular files.
    664cc987