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

This commit is contained in:
Joey Hess 2018-10-18 15:36:48 -04:00
commit bd72dfeaa1
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
7 changed files with 556 additions and 0 deletions

View file

@ -0,0 +1,57 @@
[[!comment format=mdwn
username="g@aaed65f19d6c3a2a18c33da828e66c7bb915e65a"
nickname="g"
avatar="http://cdn.libravatar.org/avatar/10470d6f8a18833e04dee17126d53372"
subject="workaround: setting LC_ALL=C"
date="2018-10-18T08:55:19Z"
content="""
I had a similar problem yesterday with the latest [x86-64 standalone build](https://downloads.kitenet.net/git-annex/linux/current/git-annex-standalone-amd64.tar.gz), git-annex ver. 6.20180927-g897e5ba57
# Short story
I solved this adding this to my `.bashrc`
export LC_ALL=C
# Non so short story
I need the standalone version for I'm using an hosting service with ssh connection; it's just a \"classic\" LAMP hosting space, not a full VM, so I cannot install any package on it
In 2016 I was able to install the standalone git-annex version 6.20161231-gc8eeb17da, along with gitolite for access control, and all was working well until recently on one of my machines I upgraded to ver. 6.20180913-1 amd64: trying to get some content always failed with
[2018-10-17 17:56:52.199123421] P2P > ERROR auth failed
fd:19: hClose: resource vanished (Broken pipe)
failed
After a brief search I found [get over ssh fails with fd:19: hClose: resource vanished - comment 1](http://git-annex.branchable.com/bugs/get_over_ssh_fails_with___fd__58__19__58___hClose__58___resource_vanished/#comment-f9a93468be4a799e1e79e97941449d67) and decidet to upgrade git-annex server side
After upgrade I got the error reported in this bug report subject and after a quick research I found a [similar report on askubuntu](https://askubuntu.com/questions/1081901/right-way-to-fix-assertion-in-loadlocale-c)
The first thing I tried was
LC_ALL=C git annex version
and I the error \"disappeared\": bingo!
I realized that `LC_ALL` was *unset* in my gitolite user profile, so I added it to my `.bashrc` and now all is working (almost) fine.
# Why almost?
Well: it's surely not related to git-annex but to my hosting server.
Every time I get some file from the remote on that hosting space I get an error
ERROR: ld.so: object '/lib/security/hosting-securize.so' from /etc/ld.so.preload cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
but fortunately it is ignored and the files are downloaded as expected
I still had no time to investigate why I get a ELFCLASS32 (I'm sure I installed the amd64 standalone)... but since it works I leave it as a background wishlist
# The end
That's all, I hope this will help others with similar issues
Bye!
Giovanni Biscuolo
"""]]

View file

@ -0,0 +1,62 @@
[[!comment format=mdwn
username="ewen"
avatar="http://cdn.libravatar.org/avatar/605b2981cb52b4af268455dee7a4f64e"
subject="Synology NAS 6.2.1-23824"
date="2018-10-18T00:00:34Z"
content="""
FTR, Synology finally released the NAS DSM 6.2.1-23824 (OS) software to my region (New Zealand; last I assume) so I've been able to install the September software update. That does work with the 64-bit Git Annex standalone version, providing the `LC_ALL=C` workaround is still in place:
ewen@nas01:~$ git-annex version
rm: loadlocale.c:129: _nl_intern_locale_data: Assertion `cnt < (sizeof (_nl_value_type_LC_TIME) / sizeof (_nl_value_type_LC_TIME[0]))' failed.
/volume1/thirdparty/git-annex.linux/runshell: line 132: 14602 Aborted rm -rf \"$localecache\" 2>&1
cmp: loadlocale.c:129: _nl_intern_locale_data: Assertion `cnt < (sizeof (_nl_value_type_LC_TIME) / sizeof (_nl_value_type_LC_TIME[0]))' failed.
/volume1/thirdparty/git-annex.linux/runshell: line 142: 14603 Aborted cmp \"$LOCPATH/buildid\" \"$base/buildid\" > /dev/null
rm: loadlocale.c:129: _nl_intern_locale_data: Assertion `cnt < (sizeof (_nl_value_type_LC_TIME) / sizeof (_nl_value_type_LC_TIME[0]))' failed.
/volume1/thirdparty/git-annex.linux/runshell: line 142: 14604 Aborted rm -rf \"$LOCPATH\"
ewen@nas01:~$ LC_ALL=C git-annex version
git-annex version: 6.20180807-g48d11a5df
build flags: Assistant Webapp Pairing S3(multipartupload)(storageclasses) WebDAV Inotify DBus DesktopNotify ConcurrentOutput TorrentParser MagicMime Feeds Testsuite
dependency versions: aws-0.19 bloomfilter-2.0.1.0 cryptonite-0.25 DAV-1.3.2 feed-1.0.0.0 ghc-8.2.2 http-client-0.5.13 persistent-sqlite-2.8.1.2 torrent-10000.1.1 uuid-1.3.13 yesod-1.6.0
key/value backends: SHA256E SHA256 SHA512E SHA512 SHA224E SHA224 SHA384E SHA384 SHA3_256E SHA3_256 SHA3_512E SHA3_512 SHA3_224E SHA3_224 SHA3_384E SHA3_384 SKEIN256E SKEIN256 SKEIN512E SKEIN512 BLAKE2B256E BLAKE2B256 BLAKE2B512E BLAKE2B512 BLAKE2B160E BLAKE2B160 BLAKE2B224E BLAKE2B224 BLAKE2B384E BLAKE2B384 BLAKE2S256E BLAKE2S256 BLAKE2S160E BLAKE2S160 BLAKE2S224E BLAKE2S224 BLAKE2SP256E BLAKE2SP256 BLAKE2SP224E BLAKE2SP224 SHA1E SHA1 MD5E MD5 WORM URL
remote types: git gcrypt p2p S3 bup directory rsync web bittorrent webdav adb tahoe glacier ddar hook external
operating system: linux x86_64
supported repository versions: 3 5 6
upgrade supported from repository versions: 0 1 2 3 4 5
ewen@nas01:~$
so at least for now I'm leaving my hand-edited work around in place:
ewen@nas01:~$ grep -B 1 LC_ALL /usr/local/bin/git-annex
# 2018-09-08 - work around for LC_TIME mismatch in locales
LC_ALL=C
export LC_ALL
ewen@nas01:~$
Interestingly I hadn't noticed previously that it seems like its `rm` and `cmp` and the like which are running into locale loading problems, at least now. Ironically line 132 is the point where it tries to clean up locale caches...
# Clean up locale caches when their standalone bundle no longer exists.
for localecache in $HOME/.cache/git-annex/locales/*; do
cachebase=$(cat \"$localecache/base\" 2>/dev/null || true)
if [ ! -d \"$cachebase\" ] || ! cmp \"$localecache/buildid\" \"$cachebase/buildid\" >/dev/null ; then
rm -rf \"$localecache\" 2>&1 || true
fi
done
and 142 is the bit that tries to refresh the locale cache:
# If the locale cache for this bundle is out of date, refresh it.
if [ -e \"$LOCPATH/buildid\" ] && ! cmp \"$LOCPATH/buildid\" \"$base/buildid\" >/dev/null ; then
rm -rf \"$LOCPATH\"
fi
if ! mkdir -p \"$LOCPATH\"; then
echo \"Unable to write to $LOCPATH; can't continue!\" >&2
exit 1
fi
echo \"$base\" > \"$LOCPATH/base\"
cp \"$base/buildid\" \"$LOCPATH/buildid\"
so it's possible the *new* issue might just be that bits of the git annex work around for locale issues are now unreachable... due to locale issues. In which case maybe only the work around step needs `LC_ALL=C`? I haven't experimented with that, but it does seem plausible that if it can get far enough to build/use locales in the right format for its own libc, that it'd then work properly.
Ewen
"""]]

View file

@ -0,0 +1,379 @@
### Please describe the problem.
Can't find an approach to file permissions mode to get thin v6 annex repo to hold no second copies.
I realize that hardlinks work in such a way that all links have same permissions mode. The issue is, which mode for files I should set to always get hardlinks?
`git-annex` seems to prefer 555 for `.git/annex/objects/` files, but appears it can create e.g. 644 when copying from remote.
`git` remembers file modes as either 755 or 644, so after `git annex lock; git annex unlock` cycle or `git annex fix` no file is hardlinked if `.git/annex/objects/` file mode is 555.
### What steps will reproduce the problem?
* Create a new git-annex repo. v6, thin.
* Create few files with same content but different perms (e.g. 555, 755, 644).
* Add and commit these files to annex.
* Observe that in this repo, 0555-mode file is hardlinked.
* Clone this repo
* Init annex in the second repo to also be v6 thin.
* Fetch the annex files to second repo.
* Observe that in the new repo, 0644-mode file is hardlinked.
* Try to figure out which permissions to use across the repo to always have hardlinks.
### What version of git-annex are you using? On what operating system?
6.20180926. Gentoo Linux. Manually corrected ebuild based on the one in `haskell` overlay.
### Please provide any additional information below.
[[!format sh """
$ git init annex_perm_issue
Initialized empty Git repository in /home/j/annex_perm_issue/.git/
[OK]
21:44:11 Wed 17 Oct j@undo-autkin ~
$ cd annex_perm_issue
[OK]
21:44:13 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ git annex init --version=6
init ok
(recording state in git...)
[OK]
21:45:09 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ ls
[OK]
21:45:12 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ v 755
[OK]
21:45:25 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ cp 755 644
[OK]
21:45:32 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ cp 755 555
[OK]
21:45:36 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ chmod 755 755
[OK]
21:45:42 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ chmod 555 555
[OK]
21:45:45 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ chmod 644 644
[OK]
21:45:50 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ ls -l
total 12
-r-xr-xr-x. 1 j j 5 Oct 17 21:45 555
-rw-r--r--. 1 j j 5 Oct 17 21:45 644
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 755
[OK]
21:45:52 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ md5sum *
d8e8fca2dc0f896fd7cb4cb0031ba249 555
d8e8fca2dc0f896fd7cb4cb0031ba249 644
d8e8fca2dc0f896fd7cb4cb0031ba249 755
[OK]
21:46:00 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ git config annex.thin true
[OK]
21:47:08 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ g add *
[OK]
21:47:17 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ ls -l
total 12
-r-xr-xr-x. 2 j j 5 Oct 17 21:45 555
-rw-r--r--. 1 j j 5 Oct 17 21:45 644
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 755
[OK]
21:47:20 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ g su
On branch master
No commits yet
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: 555
new file: 644
new file: 755
Untracked files not listed (use -u option to show untracked files)
[OK]
21:47:23 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ g ci -m 'adding all'
(recording state in git...)
[master (root-commit) d03ede4] adding all
3 files changed, 3 insertions(+)
create mode 100755 555
create mode 100644 644
create mode 100755 755
[OK]
21:48:16 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ ls -l
total 12
-r-xr-xr-x. 2 j j 5 Oct 17 21:45 555
-rw-r--r--. 1 j j 5 Oct 17 21:45 644
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 755
[OK]
21:48:20 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ ls -l .git/annex/objects/
total 4
drwxr-xr-x. 3 j j 4096 Oct 17 21:47 w8
[OK]
21:48:33 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ ls -l .git/annex/objects/w8/
total 4
drwxr-xr-x. 3 j j 4096 Oct 17 21:47 pv
[OK]
21:48:34 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ ls -l .git/annex/objects/w8/pv/
total 4
dr-xr-xr-x. 2 j j 4096 Oct 17 21:47 SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2
[OK]
21:48:35 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ ls -l
total 12
-r-xr-xr-x. 2 j j 5 Oct 17 21:45 555
-rw-r--r--. 1 j j 5 Oct 17 21:45 644
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 755
[OK]
21:49:41 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ git annex lock .
lock 555 ok
lock 644 ok
lock 755 ok
(recording state in git...)
[OK]
21:49:45 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ ls -l
total 12
lrwxrwxrwx. 1 j j 178 Oct 17 21:45 555 -> .git/annex/objects/w8/pv/SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2/SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2
lrwxrwxrwx. 1 j j 178 Oct 17 21:45 644 -> .git/annex/objects/w8/pv/SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2/SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2
lrwxrwxrwx. 1 j j 178 Oct 17 21:45 755 -> .git/annex/objects/w8/pv/SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2/SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2
[OK]
21:49:47 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ git annex unlock .
unlock 555 ok
unlock 644 ok
unlock 755 ok
(recording state in git...)
[OK]
21:49:52 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ ls -l
total 12
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 555
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 644
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 755
[OK]
21:49:53 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ git annex fix .
fix 555 ok
fix 644 ok
fix 755 ok
[OK]
21:50:01 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ ls -l
total 12
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 555
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 644
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 755
[OK]
21:50:02 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ ls -l .git/annex/objects/w8/pv/SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2/
total 4
-r-xr-xr-x. 1 j j 5 Oct 17 21:45 SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2
[OK]
21:50:08 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ git show | cat
commit d03ede4f1a8b2ba3967a9aae005030cea408e3a5
Author: Andrey Utkin <andrey_utkin@fastmail.com>
Date: Wed Oct 17 21:48:16 2018 +0100
adding all
diff --git a/555 b/555
new file mode 100755
index 0000000..db80da6
--- /dev/null
+++ b/555
@@ -0,0 +1 @@
+/annex/objects/SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2
diff --git a/644 b/644
new file mode 100644
index 0000000..db80da6
--- /dev/null
+++ b/644
@@ -0,0 +1 @@
+/annex/objects/SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2
diff --git a/755 b/755
new file mode 100755
index 0000000..db80da6
--- /dev/null
+++ b/755
@@ -0,0 +1 @@
+/annex/objects/SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2
[OK]
21:50:30 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ cd ..
[OK]
21:55:23 Wed 17 Oct j@undo-autkin ~
$ g clone ~/annex_perm_issue/ ~/annex_perm_issue.clone
Cloning into '/home/j/annex_perm_issue.clone'...
done.
[OK]
21:55:35 Wed 17 Oct j@undo-autkin ~
$ cd ~/annex_perm_issue.clone
[OK]
21:55:37 Wed 17 Oct j@undo-autkin ~/annex_perm_issue.clone
$ git annex status
[OK]
21:55:53 Wed 17 Oct j@undo-autkin ~/annex_perm_issue.clone
$ ls -l
total 12
-rwxr-xr-x. 1 j j 92 Oct 17 21:55 555
-rw-r--r--. 1 j j 92 Oct 17 21:55 644
-rwxr-xr-x. 1 j j 92 Oct 17 21:55 755
[OK]
21:55:55 Wed 17 Oct j@undo-autkin ~/annex_perm_issue.clone
$ git annex init
init ok
(recording state in git...)
[OK]
21:56:07 Wed 17 Oct j@undo-autkin ~/annex_perm_issue.clone
$ ls -l
total 12
-rwxr-xr-x. 1 j j 92 Oct 17 21:55 555
-rw-r--r--. 1 j j 92 Oct 17 21:55 644
-rwxr-xr-x. 1 j j 92 Oct 17 21:55 755
[OK]
21:56:10 Wed 17 Oct j@undo-autkin ~/annex_perm_issue.clone
$ git annex copy --to=here --all
copy SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2 (from origin...) (checksum...) ok
(recording state in git...)
[OK]
21:56:40 Wed 17 Oct j@undo-autkin ~/annex_perm_issue.clone
$ ls -l
total 12
-rwxr-xr-x. 1 j j 92 Oct 17 21:55 555
-rw-r--r--. 1 j j 92 Oct 17 21:55 644
-rwxr-xr-x. 1 j j 92 Oct 17 21:55 755
[OK]
21:56:43 Wed 17 Oct j@undo-autkin ~/annex_perm_issue.clone
$ git annex fix .
[OK]
21:56:48 Wed 17 Oct j@undo-autkin ~/annex_perm_issue.clone
$ ls -l
total 12
-rwxr-xr-x. 1 j j 92 Oct 17 21:55 555
-rw-r--r--. 1 j j 92 Oct 17 21:55 644
-rwxr-xr-x. 1 j j 92 Oct 17 21:55 755
[OK]
21:56:49 Wed 17 Oct j@undo-autkin ~/annex_perm_issue.clone
$ cat 555
/annex/objects/SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2
[OK]
21:56:56 Wed 17 Oct j@undo-autkin ~/annex_perm_issue.clone
$ git annex version
git-annex version: 6.20180926
build flags: Assistant Webapp Pairing WebDAV Inotify DBus DesktopNotify ConcurrentOutput TorrentParser MagicMime Feeds Testsuite
dependency versions: bloomfilter-2.0.1.0 cryptonite-0.25 DAV-1.3.2 feed-0.3.12.0 ghc-8.0.2 http-client-0.5.7.0 persistent-sqlite-2.6.0.1 torrent-10000.1.1 uuid-1.3.13 yesod-1.4.4
key/value backends: SHA256E SHA256 SHA512E SHA512 SHA224E SHA224 SHA384E SHA384 SHA3_256E SHA3_256 SHA3_512E SHA3_512 SHA3_224E SHA3_224 SHA3_384E SHA3_384 SKEIN256E SKEIN256 SKEIN512E SKEIN512 BLAKE2B256E BLAKE2B256 BLAKE2B512E BLAKE2B512 BLAKE2B160E BLAKE2B160 BLAKE2B224E BLAKE2B224 BLAKE2B384E BLAKE2B384 BLAKE2S256E BLAKE2S256 BLAKE2S160E BLAKE2S160 BLAKE2S224E BLAKE2S224 BLAKE2SP256E BLAKE2SP256 BLAKE2SP224E BLAKE2SP224 SHA1E SHA1 MD5E MD5 WORM URL
remote types: git gcrypt p2p bup directory rsync web bittorrent webdav adb tahoe glacier ddar hook external
operating system: linux x86_64
supported repository versions: 3 5 6
upgrade supported from repository versions: 0 1 2 3 4 5
local repository version: 5
[OK]
21:57:42 Wed 17 Oct j@undo-autkin ~/annex_perm_issue.clone
$ git annex upgrade
upgrade (v5 to v6...) (scanning for unlocked files...)
ok
[OK]
21:57:47 Wed 17 Oct j@undo-autkin ~/annex_perm_issue.clone
$ ls -l
total 12
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 555
-rw-r--r--. 1 j j 5 Oct 17 21:45 644
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 755
[OK]
21:57:50 Wed 17 Oct j@undo-autkin ~/annex_perm_issue.clone
$ git config annex.thin true
[OK]
21:57:57 Wed 17 Oct j@undo-autkin ~/annex_perm_issue.clone
$ ls -l
total 12
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 555
-rw-r--r--. 1 j j 5 Oct 17 21:45 644
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 755
[OK]
21:58:03 Wed 17 Oct j@undo-autkin ~/annex_perm_issue.clone
$ git annex fix .
fix 555 ok
fix 644 ok
[OK]
21:58:06 Wed 17 Oct j@undo-autkin ~/annex_perm_issue.clone
$ ls -l
total 12
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 555
-rw-r--r--. 2 j j 5 Oct 17 21:45 644
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 755
[OK]
21:58:07 Wed 17 Oct j@undo-autkin ~/annex_perm_issue.clone
$ ls -l .git/annex/objects/w8/pv/SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2/
total 4
-rw-r--r--. 2 j j 5 Oct 17 21:45 SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2
[OK]
21:58:24 Wed 17 Oct j@undo-autkin ~/annex_perm_issue.clone
$ cd ../annex_perm_issue
[OK]
22:00:07 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ ls -l
total 12
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 555
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 644
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 755
[OK]
22:00:11 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ ls -l .git/annex/objects/w8/pv/SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2/
total 4
-r-xr-xr-x. 1 j j 5 Oct 17 21:45 SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2
[OK]
22:00:18 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ chmod 555 *
[OK]
22:00:43 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ ls -l
total 12
-r-xr-xr-x. 1 j j 5 Oct 17 21:45 555
-r-xr-xr-x. 1 j j 5 Oct 17 21:45 644
-r-xr-xr-x. 1 j j 5 Oct 17 21:45 755
[OK]
22:00:44 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ g su
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: 644
Untracked files not listed (use -u option to show untracked files)
[OK]
22:00:46 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ g annex fix .
fix 555 ok
fix 644 ok
fix 755 ok
[OK]
22:01:06 Wed 17 Oct j@undo-autkin ~/annex_perm_issue
$ ls -l
total 12
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 555
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 644
-rwxr-xr-x. 1 j j 5 Oct 17 21:45 755
"""]]
### Have you had any luck using git-annex before? (Sometimes we get tired of reading bug reports all day and a lil' positive end note does wonders)
lil' positive end note mode on:
git-annex is the only thing to which I trust my archive of most valuable documents and memories!

View file

@ -0,0 +1,9 @@
[[!comment format=mdwn
username="andrey_utkin@49e37627b3060c40292113d73d7ffbf317233e62"
nickname="andrey_utkin"
avatar="http://cdn.libravatar.org/avatar/95bb7f4f7647cc24c1cf635b61578842"
subject="comment 1"
date="2018-10-17T22:07:15Z"
content="""
Have just repeated same commands in a new release 6.20181011, same behaviour.
"""]]

View file

@ -0,0 +1,8 @@
[[!comment format=mdwn
username="Gus"
avatar="http://cdn.libravatar.org/avatar/665626c67ab3ee7e842183f6f659e120"
subject="Thanks"
date="2018-10-17T22:34:20Z"
content="""
Thank you for your reply. It was quite helpful.
"""]]

View file

@ -0,0 +1,28 @@
[[!comment format=mdwn
username="Gus"
avatar="http://cdn.libravatar.org/avatar/665626c67ab3ee7e842183f6f659e120"
subject="Thanks"
date="2018-10-17T22:46:36Z"
content="""
Hello and thank you for taking an interest and offering your time to help me out, Joey.
I keep a file with a list of podcasts I follow and the relevant (old) URL in it is `https://rss.art19.com/freakonomics-radio`. I import them all with `xargs git annex importfeed --relaxed --fast --template='${feedtitle}/${itempubdate}-${itemtitle}${extension}' < feeds.txt`..
It seems that some files that are referenced in this RSS feed are no longer valid.
$ git-annex info 2014_10_16-How_Can_Tiny_Norway_Afford_to_Buy_So_Many_Teslas____.mp3
file: 2014_10_16-How_Can_Tiny_Norway_Afford_to_Buy_So_Many_Teslas____.mp3
size: 0 bytes (+ 1 unknown size)
key: URL--http://feedproxy.google.com/,12-63d190ce967f261870566fc1551cb690
present: false
I tried to find another RSS feed for this show and came across the more \"official\" `http://freakonomics.com/feed/`.
This was all quite some time ago and I don't recall many details. Since those days I managed to get around this by downloading the files from the archives. It may also be that the feeds have changed since then. I have also upgraded my system (including the version of git-annex), which was kept back many months.
I was still downloading the old files that I do not see in the RSS feeds now — this may be related to the problem.
The `addurl` does seem to work now, and I can't reproduce the problem I had back then. I'll take this off the table.
Yet, I do wish that `info` would mention all the URLs associated to the file. It would help pinpoint the problem in such a situation. I still don't know if the importfeed is doing its thing (adding URLS) or not.
Anyway, once more, my appreciation for your interest, your time and your work.
"""]]

View file

@ -0,0 +1,13 @@
[[!comment format=mdwn
username="disteph@02005197c6b0e3d92255823d62c08dbe6d7a4d52"
nickname="disteph"
avatar="http://cdn.libravatar.org/avatar/a12e6e0852d5a1985b8684b17202561c"
subject="comment 4"
date="2018-10-18T08:25:34Z"
content="""
> You can use `git annex findref master` in a bare repository, which is like find but operates on some branch.
>
> I am not convinced that find --all would really be that useful, since it would have to display keys and not filenames, and find is all about displaying filenames. I did make find error out in a bare repo rather than not doing anything.
Thanks for the quick answer and for the tip. `findref` still displays file names, so OK, I can pipe the output with `lookupkey` to have the corresponding list of keys. Still, my understanding is that the computation is not the same as a potential `find --all` (or `find` on bare repos), in the sense that commands like `move --all` (or `move` on bare repos) only scan the files that are present in the repo, whereas `git annex findref master` looks at the whole branch regardless of where the files are. Sure, I can filter it with `findref master --in=here`, but the computational cost wouldn't be the same, would it? (imagining that my repo contains orders of magnitude fewer files than the branch) Also, `move --all` catches past versions of files that are still in the repo, i.e. \"unused files\", whereas I guess `findref master --in=here` would miss them? It's just that commands like `move --all` start by doing the job I want before taking an action on the files, so I just wish there was a \"no-action\" version of them. A `--dry-run` option in `move` and `copy` would be good enough. I tried to trick the `move` command with a `move --all ... --from=here --to=here` but of course I was outsmarted by the command :-)
"""]]