git-annex/Command
Joey Hess c31ddeda84 optimise link staging at startup
Now it starts really, really fast! Down from 15 minutes or so on my big
tree to around 1 minute.

The trick is to remember the last time the daemon was running. Links with a
ctime from before that point don't need to be restaged on startup (as long
as they are correct), since the old daemon would have handled them already.

We also assume that if the daemon has never run before, any links that
already exist are good. The pre-commit hook fixes links, so this should be
a safe assumption.

Adds another MVar holding a DaemonStatus data structure. Also
allowed getting rid of the Annex.Fast hack. This data structure will
probably grow a lot of details about the daemon's status, that will
later be used by the webapp's UI.

The code to actually track when the daemon was last running is not written
yet. It's 3 am.
2012-06-13 02:56:16 -04:00
..
Add.hs fixed the double commits problem 2012-06-10 18:41:05 -04:00
AddUnused.hs addunused: New command, the opposite of dropunused, it relinks unused content into the git repository. 2012-05-02 14:59:05 -04:00
AddUrl.hs separate source of content from the filename associated with the key when generating a key 2012-06-05 19:51:03 -04:00
Commit.hs hlint 2012-06-12 11:32:06 -04:00
ConfigList.hs set oneshot mode on a per-command basis 2012-02-14 12:40:40 -04:00
Copy.hs rework git check-attr interface 2012-02-13 23:52:21 -04:00
Dead.hs add 2011-12-02 19:22:43 -04:00
Describe.hs lint 2011-11-11 01:52:58 -04:00
Drop.hs hlint 2012-02-16 00:44:51 -04:00
DropKey.hs set oneshot mode on a per-command basis 2012-02-14 12:40:40 -04:00
DropUnused.hs factor out nukeFile 2012-06-06 13:13:13 -04:00
Find.hs fun with symbols 2012-03-17 00:38:40 -04:00
Fix.hs extend Git.Queue to be able to queue more than simple git commands 2012-06-07 15:19:44 -04:00
FromKey.hs extend Git.Queue to be able to queue more than simple git commands 2012-06-07 15:19:44 -04:00
Fsck.hs hlint 2012-06-12 11:32:06 -04:00
Get.hs hlint 2012-06-12 11:32:06 -04:00
Import.hs import: New subcommand, pulls files from a directory outside the annex and adds them 2012-05-31 19:47:18 -04:00
InAnnex.hs set oneshot mode on a per-command basis 2012-02-14 12:40:40 -04:00
Init.hs init: When run in an already initalized repository, and without a description specified, don't delete the old description. 2011-11-12 15:42:52 -04:00
InitRemote.hs initremote: Automatically describe a remote when creating it. 2012-06-07 11:16:48 -04:00
Lock.hs extend Git.Queue to be able to queue more than simple git commands 2012-06-07 15:19:44 -04:00
Log.hs Clean up handling of git directory and git worktree. 2012-05-18 17:03:12 -04:00
Map.hs Clean up handling of git directory and git worktree. 2012-05-18 17:03:12 -04:00
Merge.hs improve alwayscommit=false mode 2012-02-25 16:18:55 -04:00
Migrate.hs separate source of content from the filename associated with the key when generating a key 2012-06-05 19:51:03 -04:00
Move.hs hlint 2012-06-12 11:32:06 -04:00
PreCommit.hs added ifM and nuked 11 lines of code 2012-03-14 17:43:34 -04:00
RecvKey.hs set oneshot mode on a per-command basis 2012-02-14 12:40:40 -04:00
Reinject.hs hlint 2012-02-16 00:44:51 -04:00
ReKey.hs variable name 2012-02-17 00:21:35 -04:00
Semitrust.hs clean up check selection code 2011-10-29 15:19:05 -04:00
SendKey.hs set oneshot mode on a per-command basis 2012-02-14 12:40:40 -04:00
Status.hs percentage library 2012-04-29 17:48:07 -04:00
Sync.hs sync: Show a nicer message if a user tries to sync to a special remote. 2012-05-27 20:55:56 -04:00
Trust.hs clean up check selection code 2011-10-29 15:19:05 -04:00
Unannex.hs Support git's core.sharedRepository configuration 2012-04-21 15:36:52 -04:00
Uninit.hs hlint 2012-06-12 11:32:06 -04:00
Unlock.hs better file mode setting code 2012-04-21 16:01:56 -04:00
Untrust.hs clean up check selection code 2011-10-29 15:19:05 -04:00
Unused.hs Clean up handling of git directory and git worktree. 2012-05-18 17:03:12 -04:00
Upgrade.hs clean up check selection code 2011-10-29 15:19:05 -04:00
Version.hs set oneshot mode on a per-command basis 2012-02-14 12:40:40 -04:00
Watch.hs optimise link staging at startup 2012-06-13 02:56:16 -04:00
Whereis.hs hlint 2012-06-12 11:32:06 -04:00