summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2010-10-16 16:20:49 -0400
committerGravatar Joey Hess <joey@kitenet.net>2010-10-16 16:20:49 -0400
commit909f619c07699fe6c76d40bb4649e07737a0b9ae (patch)
tree3d284a54f5bf70e2ac11d249bfa721963affb5be
parent6d13ae10cf1d295b64855984f5a526f8209f3341 (diff)
tweaks
-rw-r--r--Annex.hs1
-rw-r--r--Backend.hs1
-rw-r--r--Backend/File.hs1
-rw-r--r--Backend/SHA1.hs3
-rw-r--r--Backend/URL.hs1
-rw-r--r--Backend/WORM.hs7
-rw-r--r--BackendTypes.hs1
-rw-r--r--Commands.hs1
-rw-r--r--Core.hs1
-rw-r--r--GitRepo.hs1
-rw-r--r--LocationLog.hs1
-rw-r--r--Locations.hs1
-rw-r--r--Remotes.hs1
-rw-r--r--UUID.hs3
-rw-r--r--doc/git-annex.mdwn10
-rw-r--r--git-annex.hs4
16 files changed, 27 insertions, 11 deletions
diff --git a/Annex.hs b/Annex.hs
index 08607cafa..68c0cb88e 100644
--- a/Annex.hs
+++ b/Annex.hs
@@ -13,6 +13,7 @@ module Annex (
) where
import Control.Monad.State
+
import qualified GitRepo as Git
import Types
import qualified BackendTypes as Backend
diff --git a/Backend.hs b/Backend.hs
index 636557d7d..874191924 100644
--- a/Backend.hs
+++ b/Backend.hs
@@ -27,6 +27,7 @@ import System.Directory
import System.FilePath
import Data.String.Utils
import System.Posix.Files
+
import BackendList
import Locations
import qualified GitRepo as Git
diff --git a/Backend/File.hs b/Backend/File.hs
index c443b4f7a..f5237f721 100644
--- a/Backend/File.hs
+++ b/Backend/File.hs
@@ -15,6 +15,7 @@ import System.IO
import System.Cmd
import System.Exit
import Control.Exception
+
import BackendTypes
import LocationLog
import Locations
diff --git a/Backend/SHA1.hs b/Backend/SHA1.hs
index 8c7c99bbd..c01e01a72 100644
--- a/Backend/SHA1.hs
+++ b/Backend/SHA1.hs
@@ -3,8 +3,9 @@
module Backend.SHA1 (backend) where
-import qualified Backend.File
import Data.Digest.Pure.SHA
+
+import qualified Backend.File
import BackendTypes
backend = Backend.File.backend {
diff --git a/Backend/URL.hs b/Backend/URL.hs
index 4e87ca4c2..9e64e0499 100644
--- a/Backend/URL.hs
+++ b/Backend/URL.hs
@@ -7,6 +7,7 @@ import Control.Monad.State (liftIO)
import Data.String.Utils
import System.Cmd
import System.Exit
+
import BackendTypes
backend = Backend {
diff --git a/Backend/WORM.hs b/Backend/WORM.hs
index 9a1e17ec5..420f336e9 100644
--- a/Backend/WORM.hs
+++ b/Backend/WORM.hs
@@ -4,14 +4,15 @@
module Backend.WORM (backend) where
import Control.Monad.State
-import qualified Backend.File
-import BackendTypes
-import Utility
import System.FilePath
import System.Posix.Files
import Data.Digest.Pure.SHA -- slow, but we only checksum filenames
import qualified Data.ByteString.Lazy.Char8 as B
+import qualified Backend.File
+import BackendTypes
+import Utility
+
backend = Backend.File.backend {
name = "WORM",
getKey = keyValue
diff --git a/BackendTypes.hs b/BackendTypes.hs
index 41bc77858..49bd1bceb 100644
--- a/BackendTypes.hs
+++ b/BackendTypes.hs
@@ -7,6 +7,7 @@ module BackendTypes where
import Control.Monad.State (StateT)
import Data.String.Utils
+
import qualified GitRepo as Git
-- command-line flags
diff --git a/Commands.hs b/Commands.hs
index 1f9128011..c477a81fd 100644
--- a/Commands.hs
+++ b/Commands.hs
@@ -10,6 +10,7 @@ import System.Path
import Data.String.Utils
import List
import IO
+
import qualified GitRepo as Git
import qualified Annex
import Utility
diff --git a/Core.hs b/Core.hs
index 19d1737c3..fcbce4163 100644
--- a/Core.hs
+++ b/Core.hs
@@ -5,6 +5,7 @@ module Core where
import System.IO
import System.Directory
import Control.Monad.State (liftIO)
+
import Types
import Locations
import UUID
diff --git a/GitRepo.hs b/GitRepo.hs
index 76150b309..32383197b 100644
--- a/GitRepo.hs
+++ b/GitRepo.hs
@@ -42,6 +42,7 @@ import Data.String.Utils
import Data.Map as Map hiding (map, split)
import Network.URI
import Maybe
+
import Utility
{- A git repository can be on local disk or remote. Not to be confused
diff --git a/LocationLog.hs b/LocationLog.hs
index ba9178704..c0d6170b2 100644
--- a/LocationLog.hs
+++ b/LocationLog.hs
@@ -29,6 +29,7 @@ import qualified Data.Map as Map
import System.IO
import System.Directory
import Data.Char
+
import qualified GitRepo as Git
import Utility
import UUID
diff --git a/Locations.hs b/Locations.hs
index 733e74553..497850062 100644
--- a/Locations.hs
+++ b/Locations.hs
@@ -11,6 +11,7 @@ module Locations (
) where
import Data.String.Utils
+
import Types
import qualified BackendTypes as Backend
import qualified GitRepo as Git
diff --git a/Remotes.hs b/Remotes.hs
index 2fffcffa7..3774f993c 100644
--- a/Remotes.hs
+++ b/Remotes.hs
@@ -12,6 +12,7 @@ import qualified Data.Map as Map
import Data.String.Utils
import List
import Maybe
+
import Types
import qualified GitRepo as Git
import qualified Annex
diff --git a/UUID.hs b/UUID.hs
index 3e6991d48..6bd483a18 100644
--- a/UUID.hs
+++ b/UUID.hs
@@ -21,7 +21,9 @@ import Maybe
import List
import System.Cmd.Utils
import System.IO
+import System.Directory
import qualified Data.Map as M
+
import qualified GitRepo as Git
import Types
import Locations
@@ -112,6 +114,7 @@ describeUUID uuid desc = do
m <- uuidMap
let m' = M.insert uuid desc m
log <- uuidLog
+ liftIO $ createDirectoryIfMissing True (parentDir log)
liftIO $ withFileLocked log WriteMode (\h -> hPutStr h $ serialize m')
where
serialize m = unlines $ map (\(u, d) -> u++" "++d) $ M.toList m
diff --git a/doc/git-annex.mdwn b/doc/git-annex.mdwn
index ad45c0842..e552dc770 100644
--- a/doc/git-annex.mdwn
+++ b/doc/git-annex.mdwn
@@ -16,12 +16,12 @@ use. Some are used to archive data, others hold backups, and yet others
come with me when I'm away from home to carry data that doesn't fit on my
netbook. Maintaining all that was a nightmare, lots of ad-hoc moving files
around, rsyncing files (unison is too slow), and deleting multiple copies
-of files from multiple places. I realized what what I needed was revision
-control where each drive was a repository, and where copying the files
-around, and deciding which copies were safe to delete was automated.
+of files from multiple places. I realized what what I needed was a form of
+revision control where each drive was a repository, and where copying the
+files around, and deciding which copies were safe to delete was automated.
I posted about this to the VCS-home mailing list and got a great suggestion
-to make it support arbitrary key-value stores. A week of coding later,
-and git-annex is born.
+to make it support arbitrary key-value stores, for more generality and
+flexability. A week of coding later, and git-annex is born.
Enough broad picture, here's how it actually looks:
diff --git a/git-annex.hs b/git-annex.hs
index 01416f6dd..f4f0cfcdf 100644
--- a/git-annex.hs
+++ b/git-annex.hs
@@ -3,17 +3,17 @@
import Control.Exception
import System.IO
import System.Environment
+
import qualified Annex
import Types
import Core
import Commands
-import Annex
import qualified GitRepo as Git
main = do
args <- getArgs
gitrepo <- Git.repoFromCwd
- state <- new gitrepo
+ state <- Annex.new gitrepo
(flags, actions) <- parseCmd args state
tryRun state $ [startup flags] ++ actions ++ [shutdown]