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 9828f45d85
add RemoteStateHandle
This solves the problem of sameas remotes trampling over per-remote
state. Used for:

* per-remote state, of course
* per-remote metadata, also of course
* per-remote content identifiers, because two remote implementations
  could in theory generate the same content identifier for two different
  peices of content

While chunk logs are per-remote data, they don't use this, because the
number and size of chunks stored is a common property across sameas
remotes.

External special remote had a complication, where it was theoretically
possible for a remote to send SETSTATE or GETSTATE during INITREMOTE or
EXPORTSUPPORTED. Since the uuid of the remote is typically generate in
Remote.setup, it would only be possible to pass a Maybe
RemoteStateHandle into it, and it would otherwise have to construct its
own. Rather than go that route, I decided to send an ERROR in this case.
It seems unlikely that any existing external special remote will be
affected. They would have to make up a git-annex key, and set state for
some reason during INITREMOTE. I can imagine such a hack, but it doesn't
seem worth complicating the code in such an ugly way to support it.

Unfortunately, both TestRemote and Annex.Import needed the Remote
to have a new field added that holds its RemoteStateHandle.
2019-10-14 13:51:42 -04:00
Annex add RemoteStateHandle 2019-10-14 13:51:42 -04:00
Assistant Merge branch 'master' into sameas 2019-10-11 15:56:00 -04:00
Backend storing objects in git-lfs is working 2019-08-02 13:56:55 -04:00
Build reorg 2019-09-13 12:00:16 -04:00
CmdLine add --sameas option, not yet used 2019-10-01 12:36:25 -04:00
Command add RemoteStateHandle 2019-10-14 13:51:42 -04:00
Config update uninit to handle all the v7 stuff 2019-10-08 14:34:00 -04:00
Database add RemoteStateHandle 2019-10-14 13:51:42 -04:00
debian Removed support for git versions older than 2.1 2019-09-11 16:14:43 -04:00
doc add RemoteStateHandle 2019-10-14 13:51:42 -04:00
Git work around windows having infected git's plumbing 2019-10-08 15:27:05 -04:00
Limit update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Logs add RemoteStateHandle 2019-10-14 13:51:42 -04:00
Messages remove many old version ifdefs 2019-07-05 15:09:37 -04:00
P2P minor typos 2019-03-27 11:15:20 -04:00
Remote add RemoteStateHandle 2019-10-14 13:51:42 -04:00
RemoteDaemon update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
standalone git-annex-standalone.rpm: Fix the git-annex-shell symlink 2019-10-08 14:43:28 -04:00
static
templates webapp: remove configurators for obsolste cloud storage services 2019-01-22 11:48:35 -04:00
Test use #if not #ifdef 2019-09-24 17:32:33 -04:00
Types add RemoteStateHandle 2019-10-14 13:51:42 -04:00
Upgrade Refuse to upgrade direct mode repositories when git is older than 2.22 2019-08-29 15:24:41 -04:00
Utility enable-tor: Use pkexec to run command as root when gksu and kdesu are not available. 2019-09-30 15:19:01 -04:00
.ghci avoid ghci warning on tabs 2019-01-21 12:35:44 -04:00
.gitattributes
.gitignore
.mailmap
Annex.hs Removed support for git versions older than 2.1 2019-09-11 16:14:43 -04:00
Assistant.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Backend.hs plumb MeterUpdate into getKey 2019-06-25 11:43:24 -04:00
bash-completion.bash
Benchmark.hs new improved benchmark command that can benchmark anything git-annex does 2019-01-04 13:46:36 -04:00
build.bat
BuildFlags.hs Drop support for building with aws older than 0.14. 2019-04-19 14:27:59 -04:00
BuildInfo.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
CHANGELOG add RemoteStateHandle 2019-10-14 13:51:42 -04:00
CmdLine.hs get rid of implicitMessages state 2019-06-12 14:01:41 -04:00
Command.hs remove most remnants of direct mode 2019-08-26 16:27:48 -04:00
Common.hs import Utility.FileSystemEncoding in Common 2019-01-03 11:37:02 -04:00
Config.hs set annex-config-uuid when RemoteConfig contains a sameas-uuid 2019-10-10 12:58:59 -04:00
COPYRIGHT add entry for special remote example scripts which are GPL-3+ 2019-09-27 11:14:48 -04:00
Creds.hs rename RemoteConfigKey to RemoteConfigField 2019-10-10 15:44:05 -04:00
Crypto.hs inherit other fields 2019-10-10 16:11:21 -04:00
ghci
git-annex.cabal add RemoteStateHandle 2019-10-14 13:51:42 -04:00
git-annex.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
git-union-merge.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Git.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Jenkinsfile
Key.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Limit.hs fix annex.largefiles largerthan/smallerthan bug 2019-09-30 17:15:08 -04:00
Logs.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Makefile building a standalone rpm from the standalone tarball 2019-09-13 11:53:17 -04:00
Messages.hs Fix find --json to output json once more. 2019-07-05 09:58:37 -04:00
NEWS releasing package git-annex version 7.20190912 2019-09-13 12:53:40 -04:00
README
Remote.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Setup.hs
stack-lts-12.14.yaml add stack-lts-12.14.yaml 2019-07-09 11:31:43 -04:00
stack.yaml Build with silently-1.2.5.1 on Windows; the old one used "NUL" which is not supported with recent versions of ghc. 2019-08-07 17:42:16 -04:00
Test.hs v7 for all repositories 2019-08-30 14:09:14 -04:00
Types.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Upgrade.hs fix build 2019-09-01 16:44:07 -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/>