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

This commit is contained in:
Joey Hess 2020-09-29 12:12:25 -04:00
commit c80d71fad1
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
5 changed files with 89 additions and 0 deletions

View file

@ -0,0 +1,34 @@
### Please describe the problem.
Historically (in older versions of MacOS) to get git-annex working with SourceTree I've done the following:
When committing in SourceTree or SmartGit after adding annex, you may get error "git: 'annex' is not a git command". To fix:
First make sure your client is using the system git
In SourceTree preferences, go to Git tab and use system git (likely in /usr/bin/git)
Disable SIP (needed step starting from Mac OSX El Capitan), by doing the following:
Restart your Mac.
Then, make a symbolic link so SourceTree/SmartGit can see git-annex (look at which git-annex to find real location):
sudo ln -s /usr/local/bin/git-annex /usr/bin/git-annex
Re-enable SIP, by following the same steps for disabling, but rather issuing the command csrutil enable in the Terminal window
But now, I still can't write the symbolic link with SIP disabled. Obviously this isn't git-annex's fault. But I cannot figure out how to integrate git-annex so that SourceTree can work with it.
### What steps will reproduce the problem?
See above.
### What version of git-annex are you using? On what operating system?
git-annex version: 8.20200908
macOS 10.15.6
### Please provide any additional information below.
[[!format sh """
# If you can, paste a complete transcript of the problem occurring here.
# If the problem is with the git-annex assistant, paste in .git/annex/daemon.log
# End of transcript or log.
"""]]
### 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)

View file

@ -0,0 +1,9 @@
[[!comment format=mdwn
username="mark@6b90344cdab3158eacb94a3944460d138afc9bef"
nickname="mark"
avatar="http://cdn.libravatar.org/avatar/780625d9a11f1840abd94822dfe3e9f5"
subject="comment 1"
date="2020-09-28T21:10:56Z"
content="""
And BTW, we really value git-annex and use it for keeping all of our golden reference outputs for regression testing in place and available for others who need to run tests.
"""]]

View file

@ -0,0 +1,11 @@
[[!comment format=mdwn
username="mark@6b90344cdab3158eacb94a3944460d138afc9bef"
nickname="mark"
avatar="http://cdn.libravatar.org/avatar/780625d9a11f1840abd94822dfe3e9f5"
subject="comment 2"
date="2020-09-28T21:40:21Z"
content="""
Switching SourceTree to look at /usr/local/git/bin fixed the problem.
This can be CLOSED.
"""]]

View file

@ -0,0 +1,15 @@
[[!comment format=mdwn
username="yarikoptic"
avatar="http://cdn.libravatar.org/avatar/f11e9c84cb18d26a1748c33b48c924b4"
subject="comment 9"
date="2020-09-28T19:44:05Z"
content="""
Sorry for being anal with my questions and not just trying it out... but by `The async extension to the protocol guarantees only a single process will be run.` which of the following scenarios do you mean
- a. there will be no parallel workers if `--jobs N` is specified (thus a single process for an external remote)
- b. there are parallel workers, and a single instance of an external special remote will be ran and either
- b.1. only one worker would be able to talk to it
- b.2. parallel workers will talk to the same async external special remote
or may be some other c. or b.3 ?
"""]]

View file

@ -0,0 +1,20 @@
[[!comment format=mdwn
username="lykos@d125a37d89b1cfac20829f12911656c40cb70018"
nickname="lykos"
avatar="http://cdn.libravatar.org/avatar/085df7b04d3408ba23c19f9c49be9ea2"
subject="comment 4"
date="2020-09-29T08:36:18Z"
content="""
I agree about the simplification. However, when resuming an upload with, say, 400 chunks where only 10 are missing, after CHECKPRESENT-MULTI-FAILURE, we'd need to CHECKPRESENT another 390 keys until we can continue. Sure, the remote could cache the replies, but another idea would be for the remote to reply with the last key in the list that is present.
Example:
```
$ CHECKPRESENT-MULTI a b c d e # git annex calls CHECKPRESENT-MULTI with an ordered list
CHECKPRESENT-MULTI-SUCCESS # all keys are present
CHECKPRESENT-MULTI-FAILURE # all keys are missing
CHECKPRESENT-MULTI-FAILURE c # Everything up to c is present, d is missing. e could be present or missing
```
"""]]