CI to automate build of cargo lockfiles on different Alpine releases for git-annex aports https://gitlab.alpinelinux.org/alpine/aports/-/tree/master/community/git-annex
Find a file
Joey Hess fd5a392006
cache remotes via annex-speculate-present
Added remote.name.annex-speculate-present config that can be used to
make cache remotes.

Implemented it in Remote.keyPossibilities, which is used by the
get/move/copy/mirror commands, and nothing else. This way, things like
whereis will not show content that's speculatively present.

The assistant and sync --content were not using Remote.keyPossibilities,
and were changed to use it.

The efficiency hit should be small; Remote.keyPossibilities is only
used before transferring a file, which is the expensive operation.
And, it's only doing one lookup of the remoteList and a very cheap
filter over it.

Note that, git-annex still updates the location log when copying content
to a remote with annex-speculate-present set. In this case, the location
tracking will indicate that content is present in the remote. This may
not be wanted for caches, or may not be a real problem for them. TBD.

This commit was supported by the NSF-funded DataLad project.
2018-08-01 14:28:05 -04:00
Annex fix android/old ghc build 2018-07-19 13:27:29 -04:00
Assistant cache remotes via annex-speculate-present 2018-08-01 14:28:05 -04:00
Backend fix migration bug and make fsck warn 2018-05-23 14:07:51 -04:00
Build Make Build/BuildVersion update embedded version number 2018-06-26 10:36:54 -04:00
CmdLine GIT_ANNEX_SHELL_APPENDONLY 2018-05-25 13:17:56 -04:00
Command cache remotes via annex-speculate-present 2018-08-01 14:28:05 -04:00
Config use DynamicConfig to handle cost-command 2017-08-17 14:04:29 -04:00
Database fix build with old version of persistent 2017-09-25 09:57:41 -04:00
debian deal with the persistent locpath issue 2018-07-10 12:13:19 -04:00
doc cache remotes via annex-speculate-present 2018-08-01 14:28:05 -04:00
Git Support working trees set up by git-worktree. 2018-07-18 14:27:26 -04:00
Limit AssociatedFile newtype 2017-03-10 13:35:31 -04:00
Logs avoid git annex info remote buffering list of keys 2018-04-26 16:13:05 -04:00
Messages Fix mangling of --json output of utf-8 characters when not running in a utf-8 locale 2018-04-16 16:21:21 -04:00
P2P enforce retrievalSecurityPolicy 2018-06-21 13:37:01 -04:00
Remote S3: Support credential-less download from remotes configured with public=yes exporttree=yes. 2018-07-31 16:32:43 -04:00
RemoteDaemon move protocol version stuff to the Net free monad 2018-03-12 15:20:51 -04:00
standalone refuse to run if we can't write to HOME 2018-07-10 14:20:23 -04:00
static Revert "remove newlines from static js and css" 2014-06-13 02:20:39 -04:00
templates version: Added "dependency versions" line. 2017-04-07 18:16:11 -04:00
Test Split Test.hs and avoid optimising it much, to need less memory to compile. 2018-02-18 11:48:48 -04:00
Types cache remotes via annex-speculate-present 2018-08-01 14:28:05 -04:00
Upgrade squelch a couple of warnings about moveAnnex return code 2017-02-28 12:49:17 -04:00
Utility Fix reversion in display of http 404 errors. 2018-07-31 12:15:26 -04:00
.ghci workaround for ghci fragility in reusing objects compiled with ghc 2012-10-20 16:20:42 -04:00
.gitattributes update changelog location 2016-08-22 23:54:11 -04:00
.gitignore Make Build/BuildVersion update embedded version number 2018-06-26 10:36:54 -04:00
.mailmap alias for Yaroslav @ yahoo to mailmap 2015-09-09 12:38:59 -04:00
Annex.hs avoid insertWith' depreaction warning 2018-04-22 13:28:31 -04:00
Assistant.hs fold Build/SysConfig.hs into BuildInfo via include 2017-12-14 12:46:57 -04:00
Backend.hs more lambda-case conversion 2017-12-05 15:00:50 -04:00
bash-completion.bash update from optparse-applicative output 2017-06-09 11:30:24 -04:00
build.bat let build.bat also be run from cygwin terminal 2015-04-21 14:12:14 -04:00
BuildFlags.hs split BuildInfo and BuildFlags 2018-01-02 13:47:51 -04:00
BuildInfo.hs Make Build/BuildVersion update embedded version number 2018-06-26 10:36:54 -04:00
CHANGELOG cache remotes via annex-speculate-present 2018-08-01 14:28:05 -04:00
CmdLine.hs Make --json and --quiet suppress automatic init messages 2016-09-05 15:34:38 -04:00
Command.hs add --json-error-messages (not yet implemented) 2018-02-19 14:32:15 -04:00
Common.hs finally really add back custom-setup stanza 2017-12-31 16:36:39 -04:00
Config.hs configuration and docs for tracking exports 2017-09-19 13:05:43 -04:00
COPYRIGHT merge spwhitton's s/MIT/Expat/ change 2018-07-11 16:08:23 -04:00
Creds.hs finish git-annex enable-tor 2016-11-29 17:30:27 -04:00
Crypto.hs add KeyVariety type 2017-02-24 15:16:56 -04:00
ghci avoid tab warnings from ghc 8 2016-11-17 13:39:30 -04:00
git-annex.cabal prep for release tomorrow 2018-07-18 14:45:44 -04:00
git-annex.hs windows build fix 2018-01-09 11:51:17 -04:00
git-union-merge.hs Always use filesystem encoding for all file and handle reads and writes. 2016-12-24 14:46:31 -04:00
Git.hs Propigate GIT_DIR and GIT_WORK_TREE environment to external special remotes. 2016-05-06 12:26:44 -04:00
Jenkinsfile Revert "debugging strange old version of git-annex in windows installer bundle" 2017-10-26 11:32:04 -04:00
Key.hs Fix mangling of --json output of utf-8 characters when not running in a utf-8 locale 2018-04-16 16:21:21 -04:00
Limit.hs followup 2018-06-04 12:12:56 -04:00
Logs.hs implement export.log and resolve export conflicts 2017-08-31 15:47:23 -04:00
Makefile deal with the persistent locpath issue 2018-07-10 12:13:19 -04:00
Messages.hs Added INFO to external special remote protocol. 2018-02-06 13:03:55 -04:00
NEWS update version 2018-06-21 14:56:04 -04:00
README use https 2014-11-06 14:20:10 -04:00
Remote.hs cache remotes via annex-speculate-present 2018-08-01 14:28:05 -04:00
Setup.hs Added git-remote-tor-annex, which allows git pull and push to the tor hidden service. 2016-11-21 17:27:38 -04:00
stack-windows.yaml git-annex.cabal: Fix network version. 2018-07-01 13:07:24 -04:00
stack.yaml git-annex.cabal: Fix network version. 2018-07-01 13:07:24 -04:00
Test.hs limit url downloads to whitelisted schemes 2018-06-16 11:57:50 -04:00
Types.hs better dup key with -J fix 2017-10-17 18:48:53 -04:00
Upgrade.hs Avoid backtraces on expected failures when built with ghc 8; only use backtraces for unexpected errors. 2016-11-15 21:29:54 -04:00

git-annex allows managing files with git, without checking the file
contents into git. While that may seem paradoxical, it is useful when
dealing with files larger than git can currently easily handle, whether due
to limitations in memory, checksumming time, or disk space.

For documentation, see doc/ or <https://git-annex.branchable.com/>