Merge branch 'master' into readonly-annex-merge

This commit is contained in:
Joey Hess 2021-12-28 13:03:27 -04:00
commit 1291a7d86c
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
2 changed files with 73 additions and 9 deletions

View file

@ -8,17 +8,26 @@ Current list of items that need to be fixed before this is mergeable:
- When there is a transition in one of the remote git-annex branches
that has not yet been applied to the local or other git-annex branches.
Transitions are not handled.
- `git-annex log` runs git log on the git-annex branch, and so
- (fixed) `git-annex log` runs git log on the git-annex branch, and so
it will not be able to show information coming from the other, not yet
merged branches.
- Annex.Branch.files only looks at files in the git-annex branch and not
unmerged branches. This affects git-annex info output.
- Annex.Branch.hs.overBranchFileContents ditto. Affects --all and
merged branches. Fixed by making it error out in that situation.
- (fixed) Annex.Branch.files only looks at files in the git-annex branch and not
unmerged branches. This affects git-annex info output when displaying
info for a remote or a uuid. Fixed by making info display "not available"
in that situation. Not ideal, it is a small difference in output compared
to when the repository is not read-only.
- (fixed) Annex.Branch.hs.overBranchFileContents ditto. Affects --all and
also importfeed (but importfeed cannot work in a read-only repo
anyway).
- CmdLine.Seek.seekFilteredKeys when precaching location logs.
Note use of Annex.Branch.fullname
- Database.ContentIdentifier.needsUpdateFromLog and updateFromLog
anyway). Fixed by making --all throw an error when there are unmerged
branches.
- (fixed) CmdLine.Seek.seekFilteredKeys when precaching location logs.
Note use of Annex.Branch.fullname. Fixed by avoiding precaching
when there are unmerged git-annex branches. This fix will make some
things slower in a read-only repo.
- (skip) Database.ContentIdentifier.needsUpdateFromLog and updateFromLog access
the branch manually and would not see unmerged branches. But updateFromLog
writes to the db so won't run in a readonly repo anyway, and so it seems
this can be skipped.
- (skip) `--in=repository@{date}` uses loggedLocationsHistorical which uses
Annex.Branch.getHistorical, which does not look at unmerged branches.
But perhaps this is ok.. This uses the reflog, so when used to query

View file

@ -0,0 +1,55 @@
[[!comment format=mdwn
username="jasonb@ab4484d9961a46440958fa1a528e0fc435599057"
nickname="jasonb"
avatar="http://cdn.libravatar.org/avatar/c7330f4da122c671b935fc1d58bb02b1"
subject="comment 5"
date="2021-12-27T18:51:14Z"
content="""
For anyone that finds this in the future, on OS X you can setup the agent to run at login with a launchd script similar to the following:
```
<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">
<plist version=\"1.0\">
<dict>
<key>Label</key>
<string>com.example.gitannexassistant</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/git-annex</string>
<string>assistant</string>
<string>--autostart</string>
</array>
<key>EnvironmentVariables</key>
<dict>
<key>PATH</key>
<string>/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin</string>
</dict>
<key>Nice</key>
<integer>1</integer>
<key>RunAtLoad</key>
<true/>
<key>StandardErrorPath</key>
<string>/tmp/gitannexassistant.err</string>
<key>StandardOutPath</key>
<string>/tmp/gitannexassistant.out</string>
</dict>
</plist>
```
You'll need to put it into:
`~/Library/LaunchAgents/com.example.gitannexassistant.plist`
And load it with `launchctl load ~/Library/LaunchAgents/com.example.gitannexassistant.plist`
But don't forget to populate `~/.config/git-annex/autostart` with each repo, one per line.
Enjoy!
"""]]