Merge branch 'master' of ssh://git-annex.branchable.com

This commit is contained in:
Joey Hess 2021-03-01 13:10:50 -04:00
commit db2e0485ae
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
8 changed files with 179 additions and 1 deletions

View file

@ -0,0 +1,82 @@
If I'm not mistaken, the `--locked` and `--unlocked` limiting options
are intended to work with `find --branch`, but that leads to empty
output in all the cases I've tried.
[[!format sh """
set -eu
cd "$(mktemp -d "${TMPDIR:-/tmp}"/gx-XXXXXXX)"
git init
git annex init
git commit --allow-empty -mc0
echo a >on-master-locked
echo b >on-master-unlocked
git annex add on-master-locked on-master-unlocked
git annex unlock on-master-unlocked
git commit -mc1
git checkout -b other HEAD~
echo c >on-other-locked
echo d >on-other-unlocked
git annex add on-other-locked on-other-unlocked
git annex unlock on-other-unlocked
git commit -mc2
export PS4='$ '
set -x
git symbolic-ref --short HEAD
git annex find
git annex find --locked
git annex find --unlocked
git checkout -
git annex find
git annex find --locked
git annex find --unlocked
git annex find --branch=other
git annex find --branch=other --locked
git annex find --branch=other --unlocked
"""]]
```
[...]
29 $ git symbolic-ref --short HEAD
30 other
31 $ git annex find
32 on-other-locked
33 on-other-unlocked
34 $ git annex find --locked
35 on-other-locked
36 $ git annex find --unlocked
37 on-other-unlocked
38 $ git checkout -
39 Switched to branch 'master'
40 $ git annex find
41 on-master-locked
42 on-master-unlocked
43 $ git annex find --locked
44 on-master-locked
45 $ git annex find --unlocked
46 on-master-unlocked
47 $ git annex find --branch=other
48 on-other-locked
49 on-other-unlocked
50 $ git annex find --branch=other --locked
51 $ git annex find --branch=other --unlocked
```
Lines 29-49 show the output I expected. On the other hand, I thought
the last two lines, which combine --branch with --locked and
--unlocked, would show the same output as lines 35 and 37.
I dug a bit hoping I could figure out what was going on, but I haven't
had any luck so far.
Thanks in advance.
[[!meta author=kyle]]
[[!tag projects/datalad]]

View file

@ -0,0 +1,22 @@
[[!comment format=mdwn
username="arelius@a7e47ae13cb3452464261e3a99bfe6d2c25895fd"
nickname="arelius"
avatar="http://cdn.libravatar.org/avatar/f89b3d8d61a90fed8f52ac7ea9dd4456"
subject="comment 3"
date="2021-02-25T21:46:20Z"
content="""
Yeah, this is only happening on the network share.
The Network share does have a .git/hooks/ already.
To add more info, I also tried to create a specialremote on the same network share:
git annex initremote pudelvault type=directory directory=//pudelvault/project/annextestspecialremote/ encryption=none
and when I try to sync content with it with:
git annex sync --content
I get a long list of somewhat similar errors:
//pudelvault/project/annextestspecialremote\tmp\SHA256E-s5930--76c659680c2488528a0efbf315f52781df2fe3082e2cd87db87ebe487c3d85e5.hx\SHA256E-s5930--76c659680c2488528a0efbf315f52781df2fe3082e2cd87db87ebe487c3d85e5.hx: openBinaryFile: does not exist (No such file or directory)
failed
"""]]

View file

@ -0,0 +1,16 @@
[[!comment format=mdwn
username="Ilya_Shlyakhter"
avatar="http://cdn.libravatar.org/avatar/1647044369aa7747829c38b9dcc84df0"
subject="issue with example"
date="2021-02-28T23:18:26Z"
content="""
In the example, wouldn't `git-annex-unlock` erase any edits made in gimp? Was this meant to use `git-annex-add` instead?
# EXAMPLES
# git annex unlock photo.jpg
# gimp photo.jpg
# git annex lock photo.jpg
# git commit -m \"redeye removal\"
"""]]

View file

@ -55,6 +55,6 @@ designed to interoperate with it.
* [AnnexRemote](https://github.com/Lykos153/AnnexRemote) is a python library for creating new external special remotes.
* [Git::Annex](https://metacpan.org/release/Git-Annex) is a Perl interface to git-annex, including a script `annex-review-unused` for interactively processing git-annex-unused output
* [Git::Annex](https://metacpan.org/release/Git-Annex) is a Perl interface to git-annex, including a script `git annex reviewunused` for interactively processing git-annex-unused output
See also [[not]] for software that is *not* related to git-annex, but similar.

View file

@ -0,0 +1,8 @@
[[!comment format=mdwn
username="Ilya_Shlyakhter"
avatar="http://cdn.libravatar.org/avatar/1647044369aa7747829c38b9dcc84df0"
subject="issue of pushing refs to annexed files but not info on how to fetch them"
date="2021-03-01T16:46:56Z"
content="""
Just got burned by a (variation of) this issue, after coming back to git-annex after a break. This time, I did `git-annex-copy` the files to a remote, but forgot to `git-annex-sync` the new location information, so a new clone could not access the files. Maybe, a [pre-push hook](https://git-scm.com/docs/githooks#_pre_push) could be installed to print a warning (that can be turned off by a config setting), whenever you push refs to annexed files to a remote that has no (semi-)trusted location information for them? Basically, as a git user you get used to thinking that `git push` saves your work, and forgetting that it doesn't with `git-annex` can lead to data loss/inaccessibility.
"""]]

View file

@ -0,0 +1,17 @@
```
$> git annex --mumba 2>&1 | grep -e url
addurl URL ... add urls to annex
rmurl FILE URL ... record file is not available at url
registerurl KEY URL registers an url for a key
$> git annex version | head -n 1
git-annex version: 8.20210223-1~ndall+1
```
So ATM there is addurl/rmurl when operating on a FILE, and there is `registerurl` when operating on a KEY, but there seems to be no way to `unregisterurl` as to `rmurl` from a KEY. I have not found how could it be possibly done ATM without direct editing of .web files in the git-annex branch.
edit 1: well, instead of adding `unregisterurl` could be done by adding `--key` flag to `rmurl` I think.
[[!meta author=yoh]]
[[!tag projects/dandi]]

View file

@ -0,0 +1,20 @@
[[!comment format=mdwn
username="kyle"
avatar="http://cdn.libravatar.org/avatar/7d6e85cde1422ad60607c87fa87c63f3"
subject="setpresentkey 0"
date="2021-02-25T21:18:48Z"
content="""
Fwiw adding `--key` to `rmurl` sounds nice to me, and, since it looks
like RmUrl.hs already maps from file to key, I'd guess that be a
natural addition.
> I have not found how could it be possibly done ATM without direct
> editing of .web files in the git-annex branch.
I think you could use `setpresentkey`. So for a plain web URL:
```
git annex setpresentkey $key 00000000-0000-0000-0000-000000000001 0
```
"""]]

View file

@ -0,0 +1,13 @@
[[!comment format=mdwn
username="kyle"
avatar="http://cdn.libravatar.org/avatar/7d6e85cde1422ad60607c87fa87c63f3"
subject="comment 2"
date="2021-02-25T21:25:51Z"
content="""
I said:
> I think you could use setpresentkey.
Never mind, I don't think that's a good idea, since it's not operating
on a particular URL and adjusting the log.web file.
"""]]