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 53882ab4a7
make WorkerStage an open type
Rather than limiting it to PerformStage and CleanupStage, this opens it
up so any number of stages can be added as needed by commands.

Each concurrent command has a set of stages that it uses, and only
transitions between those can block waiting for a free slot in the
worker pool. Calling enteringStage for some other stage does not block,
and has very little overhead.

Note that while before the Annex state was duplicated on the first call
to commandAction, this now happens earlier, in startConcurrency.
That means that seek stage actions should that use startConcurrency
and then modify Annex state won't modify the state of worker threads
they then start. I audited all of them, and only Command.Seek
did so; prepMerge changes the working directory and so has to come
before startConcurrency.

Also, the remote list is built before duplicating the state, which means
that it gets built earlier now than it used to. This would only have an
effect of making commands that end up not needing to perform any actions
unncessary build the remote list (only when they're run with concurrency
enable), but that's a minor overhead compared to commands seeking
through the work tree and determining they don't need to do anything.
2019-06-19 13:05:03 -04:00
Annex make WorkerStage an open type 2019-06-19 13:05:03 -04:00
Assistant matching preferred content before key is known 2019-05-14 14:28:23 -04:00
Backend update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Build fix build 2019-03-18 16:38:22 -04:00
CmdLine make WorkerStage an open type 2019-06-19 13:05:03 -04:00
Command make WorkerStage an open type 2019-06-19 13:05:03 -04:00
Config Add -- before %f in the smudge/clean filter configuration 2019-03-18 14:12:13 -04:00
Database remove wrong uniqueness constraint from ContentIdentifier db 2019-04-09 19:58:24 -04:00
debian debian: fix for install-misc being renamed to install-desktop 2019-03-26 21:10:17 -04:00
doc Merge branch 'master' of ssh://git-annex.branchable.com 2019-06-17 15:26:57 -04:00
Git finish CommandStart transition 2019-06-12 13:24:01 -04:00
Limit update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Logs add Key to all ActionItem constructors 2019-06-06 12:53:24 -04:00
Messages update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
P2P minor typos 2019-03-27 11:15:20 -04:00
Remote avoid rsync/gcrypt ssh startup delay with -J 2019-06-13 11:16:38 -04:00
RemoteDaemon update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
standalone Android: Improve installation process when the user's login shell is not bash. 2019-05-23 13:06:31 -04:00
static Revert "remove newlines from static js and css" 2014-06-13 02:20:39 -04:00
templates webapp: remove configurators for obsolste cloud storage services 2019-01-22 11:48:35 -04:00
Test update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Types make WorkerStage an open type 2019-06-19 13:05:03 -04:00
Upgrade update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Utility add missing case 2019-06-04 11:24:32 -04:00
.ghci avoid ghci warning on tabs 2019-01-21 12:35:44 -04:00
.gitattributes update changelog location 2016-08-22 23:54:11 -04:00
.gitignore Removed Esqueleto as a dependency. 2018-11-06 22:18:55 +00:00
.mailmap alias for Yaroslav @ yahoo to mailmap 2015-09-09 12:38:59 -04:00
Annex.hs Revert "separate queue for cleanup actions" 2019-06-12 14:47:40 -04:00
Assistant.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Backend.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
bash-completion.bash bash completion fix 2018-11-12 13:23:05 -04:00
Benchmark.hs new improved benchmark command that can benchmark anything git-annex does 2019-01-04 13:46:36 -04:00
build.bat let build.bat also be run from cygwin terminal 2015-04-21 14:12:14 -04:00
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 run download checksum verification in separate job pool 2019-06-17 14:58:02 -04:00
CmdLine.hs get rid of implicitMessages state 2019-06-12 14:01:41 -04:00
Command.hs make WorkerStage an open type 2019-06-19 13:05:03 -04:00
Common.hs import Utility.FileSystemEncoding in Common 2019-01-03 11:37:02 -04:00
Config.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
COPYRIGHT update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Creds.hs not a phantom type 2019-04-27 16:18:27 -04:00
Crypto.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
ghci avoid tab warnings from ghc 8 2016-11-17 13:39:30 -04:00
git-annex.cabal releasing package git-annex version 7.20190615 2019-06-15 12:39:16 -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 Revert "debugging strange old version of git-annex in windows installer bundle" 2017-10-26 11:32:04 -04:00
Key.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Limit.hs avoid list lookup by parseToken 2019-05-14 13:11:29 -04:00
Logs.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Makefile Makefile: Added install-completions to install target. 2019-05-08 10:48:38 -04:00
Messages.hs add startingNoMessage 2019-06-12 14:11:23 -04:00
NEWS releasing package git-annex version 7.20181031 2018-10-31 15:46:57 -04:00
README use https 2014-11-06 14:20:10 -04:00
Remote.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -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-lts-9.9.yaml Added NetworkBSD build flag to deal with Network.BSD moving to a new package. 2019-02-08 13:36:39 -04:00
stack-windows.yaml Added NetworkBSD build flag to deal with Network.BSD moving to a new package. 2019-02-08 13:36:39 -04:00
stack.yaml aws-0.21.1 2019-02-24 12:45:09 -04:00
Test.hs test case for bf7ecd6892 2019-05-06 14:24:42 -04:00
Types.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Upgrade.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -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/>