diff options
Diffstat (limited to 'doc/bugs/annex-lookupkey_fails_to_deal_with_absolute_paths/comment_1_b9aa0c69b8841c8fe885a5e2e9ec9a06._comment')
-rw-r--r-- | doc/bugs/annex-lookupkey_fails_to_deal_with_absolute_paths/comment_1_b9aa0c69b8841c8fe885a5e2e9ec9a06._comment | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/doc/bugs/annex-lookupkey_fails_to_deal_with_absolute_paths/comment_1_b9aa0c69b8841c8fe885a5e2e9ec9a06._comment b/doc/bugs/annex-lookupkey_fails_to_deal_with_absolute_paths/comment_1_b9aa0c69b8841c8fe885a5e2e9ec9a06._comment new file mode 100644 index 000000000..72ff677fc --- /dev/null +++ b/doc/bugs/annex-lookupkey_fails_to_deal_with_absolute_paths/comment_1_b9aa0c69b8841c8fe885a5e2e9ec9a06._comment @@ -0,0 +1,25 @@ +[[!comment format=mdwn + username="joey" + subject="""comment 1""" + date="2017-12-08T18:58:18Z" + content=""" +This is due to lookupkey not passing the filename through git ls-files like +most (all?) other commands do. + +Using git ls-files would lead to other behavior changes though. It recurses into +directories. I don't think it makes sense for lookupkey to recurse into +directories, because its output format does not include the filename, so +listing a bunch of keys for annexed files is not clear. git annex find +can already recurse and can use a format with the key and the filename +that's suited for directory recursion. git annex lookupkey, as plumbing, +is supposed to be simpler than that. + +I suppose lookupkey could normalize absolute file paths, checking if they +point into the git repository. I don't think that git-annex contains +such normalization code, and it might be a lot more complicated than it at +first seems -- git has a lot of wrinkles with submodules, symlinks, etc etc. +git does not seem to have a suitable command to do it. + +So seems the best way is to use git ls-files and detect when it's recursing, +and exit nonzero then. +"""]] |