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 d010ab04be
sped up the --all option by 2x to 16x by using git cat-file --buffer
This assumes that no location log files will have a newline or carriage
return in their name. catObjectStream skips any such files due to
cat-file not supporting them.

Keys have been prevented from containing newlines since 2011,
commit 480495beb4. If some old repo
had a key with a newline in it, --all will just skip processing that key.
Other things, like .git/annex/unused files certianly assume no newlines in
keys too, and AFAICR, such keys never actually worked.

Carriage return is escaped by preSanitizeKeyName since 2013. WORM keys
generated before that point could perhaps contain a CR. (URL probably not,
http probably doesn't support an URL with a raw CR in it.) So, added
a warning in fsck about such keys. Although, fsck --all will naturally
skip them, so won't be able to warn about them. Not entirely
satisfactory, but I'll bet there are not really any such keys in
existence.

Thanks to Lukey for finding this optimisation.
2020-07-07 13:54:04 -04:00
Annex add back git-annex branch read cache 2020-07-06 12:22:33 -04:00
Assistant S3: The REDUCED_REDUNDANCY storage class is no longer cheaper 2020-06-16 12:04:29 -04:00
Backend sped up the --all option by 2x to 16x by using git cat-file --buffer 2020-07-07 13:54:04 -04:00
Build fix build 2020-05-01 19:05:35 -04:00
CmdLine sped up the --all option by 2x to 16x by using git cat-file --buffer 2020-07-07 13:54:04 -04:00
Command add back git-annex branch read cache 2020-07-06 12:22:33 -04:00
Config fix all remaining -Wincomplete-uni-patterns warnings 2020-04-15 13:55:08 -04:00
Database remove redundant imports 2020-06-22 11:05:34 -04:00
debian Revert "data type that starts off using a set but converts to a bloom filter when large" 2020-07-01 20:12:19 -04:00
doc sped up the --all option by 2x to 16x by using git cat-file --buffer 2020-07-07 13:54:04 -04:00
Git sped up the --all option by 2x to 16x by using git cat-file --buffer 2020-07-07 13:54:04 -04:00
Limit convert TopFilePath to use RawFilePath 2019-12-09 15:07:21 -04:00
Logs support required groupwanted 2020-04-28 13:31:26 -04:00
Messages fix all remaining -Wincomplete-uni-patterns warnings 2020-04-15 13:55:08 -04:00
P2P remove redundant imports 2020-06-22 11:05:34 -04:00
Remote simplify interface by removing size 2020-07-03 14:22:22 -04:00
RemoteDaemon add back git-annex branch read cache 2020-07-06 12:22:33 -04:00
standalone avoid running test on windows 2020-07-02 13:40:00 -04:00
static Revert "remove newlines from static js and css" 2014-06-13 02:20:39 -04:00
templates cache the serialization of a Key 2019-11-22 17:49:16 -04:00
Test dix original branch determation when testing adjusted branches 2020-06-23 17:41:50 -04:00
Types add back git-annex branch read cache 2020-07-06 12:22:33 -04:00
Upgrade annex.skipunknown with transition plan 2020-05-28 15:55:17 -04:00
Utility Revert "async exception safety for coprocesses" 2020-07-06 15:11:28 -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 ignore cabal.project.local~ 2020-06-18 12:25:47 -04:00
.mailmap alias for Yaroslav @ yahoo to mailmap 2015-09-09 12:38:59 -04:00
Annex.hs refix bug in a better way 2020-07-02 13:32:33 -04:00
Assistant.hs add back git-annex branch read cache 2020-07-06 12:22:33 -04:00
Backend.hs change retrieveExport and getKey to throw exception 2020-05-15 13:45:53 -04:00
bash-completion.bash bash completion fix 2018-11-12 13:23:05 -04:00
Benchmark.hs Sped up query commands that read the git-annex branch by around 5% 2020-04-09 13:54:43 -04:00
build.bat let build.bat also be run from cygwin terminal 2015-04-21 14:12:14 -04:00
BuildFlags.hs include DebugLocks build flag 2020-05-26 12:24:20 -04:00
BuildInfo.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
CHANGELOG sped up the --all option by 2x to 16x by using git cat-file --buffer 2020-07-07 13:54:04 -04:00
CmdLine.hs audit all uses of SomeException to avoid catching async exceptions 2020-06-05 15:16:57 -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 build warnings 2020-07-01 14:30:08 -04:00
COPYRIGHT convert to withCreateProcess for async exception safety 2020-06-04 15:45:52 -04:00
Creds.hs remove redundant imports 2020-06-22 11:05:34 -04:00
Crypto.hs fix strictness issue 2020-06-16 17:09:34 -04:00
git-annex.cabal Revert "data type that starts off using a set but converts to a bloom filter when large" 2020-07-01 20:12:19 -04:00
git-annex.hs include git-annex-shell back in 2019-12-02 11:51:52 -04:00
git-union-merge.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Git.hs ByteString Ref continued 2020-04-07 11:54:27 -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 encoding a git sha as a git-annex key 2020-06-23 14:25:39 -04:00
Limit.hs use filepath-bytestring for annex object manipulations 2019-12-11 15:25:07 -04:00
Logs.hs optimise logfile to key parsing 2020-07-07 13:03:33 -04:00
Makefile improve cabal v2 use 2020-06-18 13:56:03 -04:00
Messages.hs handle git-credential prompt in -J mode 2020-01-22 16:42:15 -04:00
NEWS annex.skipunknown with transition plan 2020-05-28 15:55:17 -04:00
README use https 2014-11-06 14:20:10 -04:00
Remote.hs improve "unable to lock down 1 copy" message 2020-06-26 13:00:40 -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-12.14.yaml fix stack file syntax and deps 2020-06-30 17:12:23 -04:00
stack.yaml fix stack file syntax and deps 2020-06-30 17:12:23 -04:00
Test.hs fix windows build 2020-07-02 12:18:42 -04:00
Types.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Upgrade.hs add runsGitAnnexChildProcess calls 2020-06-17 15:31:03 -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/>