git-annex/Command
Joey Hess 31289da691
get -J: Download different files from different remotes when the remotes have the same costs.
Only done in -J mode because only if there's concurrency can downloading
from two remotes be faster. Without concurrency, it's likely the case that
sequential downloads from the same remote are faster than switching back
and forth between two remotes.

There is some hairy MVar code here, but basically it just keeps
the activeremotes MVar full except when deciding which remote to assign
to a thread.

Also affects gets by sync --content -J

This commit was sponsored by Jochen Bartl.
2016-09-06 12:45:21 -04:00
..
Add.hs Removed dependency on json library; all JSON is now handled by aeson. 2016-07-26 19:15:34 -04:00
AddUnused.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
AddUrl.hs remove TransferObserver 2016-08-03 13:46:20 -04:00
Adjust.hs adjust: Add --fix adjustment, which is useful when the git directory is in a nonstandard place. 2016-05-16 17:18:33 -04:00
Assistant.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Benchmark.hs change keys database to use IKey type with more efficient serialization 2016-01-12 14:01:50 -04:00
CalcKey.hs calckey: New plumbing command, calculates the key that would be used to refer to a file 2016-04-20 13:50:26 -04:00
CheckPresentKey.hs avoid --batch crashing if a remote fails to be accessed 2016-02-12 16:48:03 -04:00
Commit.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
ConfigList.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
ContentLocation.hs Fix reversion in lookupkey, contentlocation, and examinekey which caused them to sometimes output side messages. 2016-01-29 13:20:24 -04:00
Copy.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Dead.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Describe.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
DiffDriver.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Direct.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Drop.hs get, move, copy, mirror: Added --failed switch which retries failed copies/moves 2016-08-03 12:37:12 -04:00
DropKey.hs --branch, stage 2 2016-07-20 15:23:43 -04:00
DropUnused.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
EnableRemote.hs enableremote: Remove annex-ignore configuration from a remote. 2016-05-24 15:58:27 -04:00
ExamineKey.hs examimekey: Allow being run in a git repo that is not initialized by git-annex yet. 2016-09-05 12:26:59 -04:00
Expire.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Find.hs Removed dependency on json library; all JSON is now handled by aeson. 2016-07-26 19:15:34 -04:00
FindRef.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Fix.hs fix build warning on windows and android 2016-05-05 15:49:56 -04:00
Forget.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
FromKey.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Fsck.hs get, move, copy, mirror: Added --failed switch which retries failed copies/moves 2016-08-03 12:37:12 -04:00
FuzzTest.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
GCryptSetup.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Get.hs get -J: Download different files from different remotes when the remotes have the same costs. 2016-09-06 12:45:21 -04:00
Group.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
GroupWanted.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Help.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Import.hs annex.largefiles can be configured in .gitattributes too 2016-02-02 15:18:17 -04:00
ImportFeed.hs remove 3 build flags 2016-01-26 08:14:57 -04:00
InAnnex.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Indirect.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Info.hs get, move, copy, mirror: Added --failed switch which retries failed copies/moves 2016-08-03 12:37:12 -04:00
Init.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
InitRemote.hs Pass the various gnupg-options configs to gpg in several cases where they were not before. 2016-05-23 17:03:20 -04:00
List.hs list: Do not include dead repositories. 2016-06-04 14:33:31 -04:00
Lock.hs Make lock and unlock work in v6 repos on files whose content is not present. 2016-06-09 14:40:44 -04:00
LockContent.hs correct comment 2016-04-13 13:04:38 -04:00
Log.hs log: Added --all option. 2016-07-17 15:15:08 -04:00
LookupKey.hs Fix reversion in lookupkey, contentlocation, and examinekey which caused them to sometimes output side messages. 2016-01-29 13:20:24 -04:00
Map.hs remove unused 2016-05-23 16:46:43 -04:00
MatchExpression.hs matchexpression: Added --largefiles option to parse an annex.largefiles expression. 2016-02-03 16:58:36 -04:00
Merge.hs refactor 2016-04-22 14:35:48 -04:00
MetaData.hs get, move, copy, mirror: Added --failed switch which retries failed copies/moves 2016-08-03 12:37:12 -04:00
Migrate.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Mirror.hs get, move, copy, mirror: Added --failed switch which retries failed copies/moves 2016-08-03 12:37:12 -04:00
Move.hs remove TransferObserver 2016-08-03 13:46:20 -04:00
NotifyChanges.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
NumCopies.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
PreCommit.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Proxy.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
ReadPresentKey.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
RecvKey.hs get, move, copy, mirror: Added --failed switch which retries failed copies/moves 2016-08-03 12:37:12 -04:00
RegisterUrl.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Reinit.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Reinject.hs reinject: Added new mode which can reinject known files into the annex. 2016-04-22 13:49:32 -04:00
ReKey.hs Preserve execute bits of unlocked files in v6 mode. 2016-04-14 14:47:08 -04:00
RemoteDaemon.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Repair.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Required.hs started converting to use optparse-applicative 2015-07-08 13:36:25 -04:00
ResolveMerge.hs fix auto merge conflict resolution when doing out of tree merge for adjusted branch 2016-04-06 17:32:04 -04:00
RmUrl.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Schedule.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Semitrust.hs convert all commands to work with optparse-applicative 2015-07-08 15:08:02 -04:00
SendKey.hs remove TransferObserver 2016-08-03 13:46:20 -04:00
SetKey.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
SetPresentKey.hs --branch, stage 2 2016-07-20 15:23:43 -04:00
Smudge.hs Make git clean filter preserve the backend that was used for a file. 2016-06-09 15:17:08 -04:00
Status.hs Removed dependency on json library; all JSON is now handled by aeson. 2016-07-26 19:15:34 -04:00
Sync.hs use keyLocations not loggedLocations 2016-09-06 11:57:45 -04:00
Test.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
TestRemote.hs reinject: When src file's content cannot be verified, leave it alone, instead of deleting it. 2016-04-20 13:21:56 -04:00
TransferInfo.hs get, move, copy, mirror: Added --failed switch which retries failed copies/moves 2016-08-03 12:37:12 -04:00
TransferKey.hs remove TransferObserver 2016-08-03 13:46:20 -04:00
TransferKeys.hs remove TransferObserver 2016-08-03 13:46:20 -04:00
Trust.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Unannex.hs hard links on windows 2016-04-08 15:25:32 -04:00
Undo.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Ungroup.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Uninit.hs uninit: Fix crash due to trying to write to deleted keys db. 2016-07-12 14:18:35 -04:00
Unlock.hs Fix update of associated files db when unlocking a file in a v6 repo. 2016-06-09 14:45:00 -04:00
Untrust.hs convert all commands to work with optparse-applicative 2015-07-08 15:08:02 -04:00
Unused.hs refactor isBareRepo 2016-06-02 16:59:47 -04:00
Upgrade.hs autoinit on upgrade 2016-03-31 17:20:43 -04:00
VAdd.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
VCycle.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Version.hs version: Display OS version and architecture too. 2016-05-05 16:06:01 -04:00
VFilter.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Vicfg.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
View.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
VPop.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Wanted.hs Ord constraint redundant 2016-01-28 12:34:07 -04:00
Watch.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
WebApp.hs webapp: When $HOME is a git repository, and has been initialized for use by git-annex, opening the webapp went ahead and ran the assistant there, annexing all files. Since this is almost certianly not desirable, especially when the user is just opening the webapp from a dekstop menu which happens to run it in $HOME, the webapp will now not treat such a $HOME git repository as a git-annex repository. 2016-04-13 14:07:50 -04:00
Whereis.hs get, move, copy, mirror: Added --failed switch which retries failed copies/moves 2016-08-03 12:37:12 -04:00
XMPPGit.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00