summaryrefslogtreecommitdiff
path: root/Locations.hs
Commit message (Collapse)AuthorAge
* ssh connection cachingGravatar Joey Hess2012-01-20
| | | | | | | | | | | Ssh connection caching is now enabled automatically by git-annex. Only one ssh connection is made to each host per git-annex run, which can speed some things up a lot, as well as avoiding repeated password prompts. Concurrent git-annex processes also share ssh connections. Cached ssh connections are shut down when git-annex exits. Note: The rsync special remote does not yet participate in the ssh connection caching.
* avoid partial functionGravatar Joey Hess2011-12-15
|
* optimize index updatingGravatar Joey Hess2011-12-11
| | | | | | | | | | | The last branch ref that the index was updated to is stored in .git/annex/index.lck, and the index only updated when the current branch ref differs. (The .lck file should later be used for locking too.) Some more optimization is still needed, since there is some redundancy in calls to git show-ref.
* move a file location to Locations.hsGravatar Joey Hess2011-12-11
|
* better syntaxGravatar Joey Hess2011-12-10
|
* Fix bug in last version in getting contents from bare repositories.Gravatar Joey Hess2011-12-10
|
* refactorGravatar Joey Hess2011-12-03
|
* convert rsync special backend to using both hash directory typesGravatar Joey Hess2011-12-02
|
* use lowercase hash by default; non-bare repos are a special caseGravatar Joey Hess2011-12-02
| | | | | | | | Directory special remotes will now always store keys in the lowercase name, which avoids the complication of catching failures to create the mixed case name. Git remotes using http will now try the lowercase name first.
* refactorGravatar Joey Hess2011-12-02
|
* refactorGravatar Joey Hess2011-11-28
|
* optimize gitAnnexLocationGravatar Joey Hess2011-11-28
| | | | For non-bare it's back to doing no work.
* store content in hashDirLower directories in bare repositoriesGravatar Joey Hess2011-11-28
| | | | | | | When storing content in bare repositories, use the hashDirLower directories. Bare repositories can be on USB drives, which might use the FAT filesystem, and fall afoul of recent bugs in linux's handling of mixed case on FAT. Using hashDirLower avoids that.
* add support for using hashDirLower in addition to hashDirMixedGravatar Joey Hess2011-11-28
| | | | | | | | | | Supporting multiple directory hash types will allow converting to a different one, without a flag day. gitAnnexLocation now checks which of the possible locations have a file. This means more statting of files. Several places currently use gitAnnexLocation and immediately check if the returned file exists; those need to be optimised.
* Remove haskell98 to build with ghc 7.2.2, also built with ghc 7.0.4Gravatar Mark Wright2011-11-26
| | | | Signed-off-by: Joey Hess <joey@kitenet.net>
* reorder repo parameters lastGravatar Joey Hess2011-11-08
| | | | | | | | | | | | | Many functions took the repo as their first parameter. Changing it consistently to be the last parameter allows doing some useful things with currying, that reduce boilerplate. In particular, g <- gitRepo is almost never needed now, instead use inRepo to run an IO action in the repo, and fromRepo to get a value from the repo. This also provides more opportunities to use monadic and applicative combinators.
* clean Annex stuff out of Utility/Gravatar Joey Hess2011-10-16
|
* factor out common importsGravatar Joey Hess2011-10-03
| | | | no code changes
* Add locking to avoid races when changing the git-annex branch.Gravatar Joey Hess2011-10-03
|
* finished hlint passGravatar Joey Hess2011-07-15
|
* hlint tweaksGravatar Joey Hess2011-07-15
| | | | Did all sources except Remotes/* and Command/*
* add hashing to web log filesGravatar Joey Hess2011-07-01
|
* renamed GitRepo to GitGravatar Joey Hess2011-06-30
| | | | It was always imported qualified as Git anyway
* add journaling to speed up changes to the git-annex branchGravatar Joey Hess2011-06-23
| | | | | | | | git is slow when the index file is large and has to be rewritten each time a file is changed. To speed this up, added a journal where changes are recorded before being fed into the index file and committed to the git-annex branch. The entire journal can be fed into git with just 2 commands, and only one write of the index file.
* update re git-annex branch direct modificationGravatar Joey Hess2011-06-23
|
* remove stateDirGravatar Joey Hess2011-06-23
|
* stub in v2 upgradeGravatar Joey Hess2011-06-22
|
* store trust.log and remote.log in the git-annex branchGravatar Joey Hess2011-06-22
| | | | .. and I think that's everything that will use the branch
* moveGravatar Joey Hess2011-06-22
|
* fixed logFileGravatar Joey Hess2011-06-22
|
* typos in commentsGravatar Joey Hess2011-06-21
|
* rename modules for data types into Types/ directoryGravatar Joey Hess2011-06-01
|
* more pointless monadic golfingGravatar Joey Hess2011-05-16
|
* unused: Now also lists files fsck places in .git/annex/bad/Gravatar Joey Hess2011-04-29
|
* add loggedKeysGravatar Joey Hess2011-04-02
|
* Use lowercase hash directories for locationlog filesGravatar Joey Hess2011-04-02
| | | | | | to avoid some issues with git on OSX with the mixed-case directories. No migration is needed; the old mixed case hash directories are still read; new information is written to the new directories.
* use same directory structure as .git/annex/objects for directory remotesGravatar Joey Hess2011-03-30
| | | | And same file perms.
* better letter choice for hashingGravatar Joey Hess2011-03-16
|
* added 2 level hashingGravatar Joey Hess2011-03-15
| | | | | | 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.
* escape colons in key filesGravatar Joey Hess2011-03-15
|
* first pass at using new keysGravatar Joey Hess2011-03-15
| | | | | | | 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.
* add hash directory stuff, not used yetGravatar Joey Hess2011-03-15
|
* some initial support for local bare reposGravatar Joey Hess2011-03-03
| | | | | | | | | | | 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.
* Improved temp file handlingGravatar Joey Hess2011-01-28
| | | | | | | * 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.
* idiomGravatar Joey Hess2011-01-27
|
* better directory handlingGravatar Joey Hess2011-01-27
| | | | | | | | | | 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.
* avoid warning when symlink in the repo contains a colon but is not aGravatar Joey Hess2011-01-27
| | | | pointer to annexed content
* hlint tweaksGravatar Joey Hess2010-11-22
| | | | Remotes.hs next, and also Backend/* and Command/*
* dropunusedGravatar Joey Hess2010-11-15
|
* fsck improvementsGravatar Joey Hess2010-11-13
| | | | | | | | | * 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.