Commit graph

97 commits

Author SHA1 Message Date
Joey Hess
dd5448eb07 added 2 level hashing
This means there can be 1024 subdirs, each with up to 1024 sub-subdirs.
So with hundreds of millions of annexed objects, each leaf directory will
have only a few files on average.
2011-03-15 23:58:27 -04:00
Joey Hess
6c412fb9f5 escape colons in key files 2011-03-15 23:39:04 -04:00
Joey Hess
9d49fe2c17 first pass at using new keys
It compiles. It sorta works. Several subcommands are FIXME marked and
broken, because things that used to accept separate --backend and --key
params need to be changed to accept just a --key that encodes all the key
info, now that there is metadata in keys.
2011-03-15 21:34:13 -04:00
Joey Hess
0e0f85e09d add hash directory stuff, not used yet 2011-03-15 17:47:00 -04:00
Joey Hess
d651d4985b some initial support for local bare repos
This relies on git-annex's behavior of reading the config of local repos.
That allows repoIsLocalBare to examine the git config for core.bare.

Hopefully, gitAnnexLocation, gitAnnexDir, and gitAnnexObjectDir
are only used on local repos. But, I have not audited fully, since
they're probably not (see for example copyToRemote). And so,
the functions fall back to their old non-bare-aware behavior for
non-local repos.
2011-03-03 14:51:57 -04:00
Joey Hess
e6da7eb177 Improved temp file handling
* Improved temp file handling. Transfers of content can now be resumed
  from temp files later; the resume does not have to be the immediate
  next git-annex run.
* unused: Include partially transferred content in the list.
2011-01-28 14:10:50 -04:00
Joey Hess
4f9336bb60 idiom 2011-01-27 17:58:30 -04:00
Joey Hess
167523f09d better directory handling
Rename Locations functions for better consitency, and make their values
more consistent too.

Used </> rather than manually building paths. There are still more places
that manually do so, but are tricky, due to the behavior of </> when
the second FilePath is absolute. So I only changed places where
it obviously was relative.
2011-01-27 17:00:32 -04:00
Joey Hess
9640417067 avoid warning when symlink in the repo contains a colon but is not a
pointer to annexed content
2011-01-27 16:10:45 -04:00
Joey Hess
57adb0347b hlint tweaks
Remotes.hs next, and also Backend/* and Command/*
2010-11-22 15:46:57 -04:00
Joey Hess
748a7475bb dropunused 2010-11-15 18:04:19 -04:00
Joey Hess
5fa25a812a fsck improvements
* fsck: Check if annex.numcopies is satisfied.
* fsck: Verify the sha1 of files when the SHA1 backend is used.
* fsck: Verify the size of files when the WORM backend is used.
* fsck: Allow specifying individual files to fsk if fscking everything
  is not desired.
* fsck: Fix bug, introduced in 0.04, in detection of unused data.
2010-11-13 14:59:27 -04:00
Joey Hess
8dd9f8e49e typo 2010-11-08 17:44:30 -04:00
Joey Hess
6395b790ce Reorganised the layout of .git/annex/ 2010-11-08 17:00:34 -04:00
Joey Hess
02a21d7f27 reorg .git/annex 2010-11-08 15:14:54 -04:00
Joey Hess
316264f3e8 add annexDir 2010-11-07 17:36:24 -04:00
Joey Hess
cf4c926f2e more Wall cleaning 2010-10-31 16:00:32 -04:00
Joey Hess
833d4b342e copyright statements 2010-10-27 16:53:54 -04:00
Joey Hess
4cda7b6e7c bugfix 2010-10-25 21:35:45 -04:00
Joey Hess
8beed17168 drop incomplete bare repo support
Added a bug about it.

Now git annex move --from works fully
2010-10-25 17:31:07 -04:00
Joey Hess
1aa19422ac git annex move --from remote almost working 2010-10-25 17:17:03 -04:00
Joey Hess
f3dcc8489d gratuitous rename 2010-10-18 02:06:27 -04:00
Joey Hess
a020b0c25c atomic file retrieval from backends 2010-10-17 16:39:30 -04:00
Joey Hess
da453ba701 bugfix: don't add files under .git-annex
That could happen if git annex add -N were used repeatedly..
2010-10-16 22:36:35 -04:00
Joey Hess
909f619c07 tweaks 2010-10-16 16:20:49 -04:00
Joey Hess
e577656fea relative link fix 2010-10-15 16:09:30 -04:00
Joey Hess
b8ba60428a changed key to include backend name 2010-10-14 19:36:11 -04:00
Joey Hess
6f3572e47f more reorg, spiffed up state monad 2010-10-14 03:18:11 -04:00
Joey Hess
0b55bd05de more namespace cleanup 2010-10-14 02:52:17 -04:00
Joey Hess
48643b68b3 convert GitRepo to qualified import 2010-10-14 02:36:41 -04:00
Joey Hess
e47dca162a update 2010-10-13 23:31:08 -04:00
Joey Hess
f87c5ed949 copying almost working 2010-10-13 16:21:50 -04:00
Joey Hess
99b2029236 key conversion back from file bugfixes 2010-10-13 03:41:12 -04:00
Joey Hess
d1071bd1fe autobugfixing!
Converted Key to a real data type and caught all the places where I used
an unconverted filename as a key.

Had to loose some sanity checks around whether something is already
annexed, but I guess I can add those back other ways.
2010-10-13 02:31:24 -04:00
Joey Hess
3e65384f06 fix relative symlink 2 2010-10-13 01:36:20 -04:00
Joey Hess
16cd682290 better key to file mapping 2010-10-13 01:04:06 -04:00
Joey Hess
67ae9d7fa1 relative symlink to annexed file 2010-10-13 00:58:59 -04:00
Joey Hess
208bba8d30 got rid of the .git-annex/key.backend files 2010-10-13 00:42:46 -04:00
Joey Hess
9926fe5c8a bugfix in escaping 2010-10-13 00:21:34 -04:00
Joey Hess
490eb66be4 update 2010-10-12 20:20:59 -04:00
Joey Hess
b7858ada03 bugfixes 2010-10-12 20:04:36 -04:00
Joey Hess
92bf408c66 faddle 2010-10-12 00:53:42 -04:00
Joey Hess
ebc3fbe9ae explicit exports 2010-10-11 17:52:46 -04:00
Joey Hess
af82586adf split up Types 2010-10-11 17:19:55 -04:00
Joey Hess
ecf19abf76 foo 2010-10-11 00:23:49 -04:00
Joey Hess
e5514e0cb0 update 2010-10-10 18:05:37 -04:00
Joey Hess
dce9c2e080 convert GitRepo to struct with constructor 2010-10-10 16:06:36 -04:00