Merge branch 'master' of ssh://git-annex.branchable.com
This commit is contained in:
commit
c3f94aa744
3 changed files with 25 additions and 2 deletions
22
Init.hs
22
Init.hs
|
@ -19,6 +19,26 @@ import Logs.UUID
|
|||
import Annex.Version
|
||||
import Annex.UUID
|
||||
|
||||
import System.Posix.User
|
||||
|
||||
genDescription :: Maybe String -> Annex String
|
||||
genDescription (Just d) = return d
|
||||
genDescription Nothing = do
|
||||
hostname <- getHostname
|
||||
let at = if null hostname then "" else "@"
|
||||
username <- clicketyclickety
|
||||
reldir <- liftIO . relHome =<< fromRepo Git.repoPath
|
||||
return $ concat [username, at, hostname, ":", reldir]
|
||||
where
|
||||
{- Haskell lacks uname(2) bindings, except in the
|
||||
- Bindings.Uname addon. Rather than depend on that,
|
||||
- use uname -n when available. -}
|
||||
getHostname = liftIO $ catchDefaultIO uname_node ""
|
||||
uname_node = takeWhile (/= '\n') <$>
|
||||
readProcess "uname" ["-n"]
|
||||
clicketyclickety = liftIO $ userName <$>
|
||||
(getUserEntryForID =<< getEffectiveUserID)
|
||||
|
||||
initialize :: Maybe String -> Annex ()
|
||||
initialize mdescription = do
|
||||
prepUUID
|
||||
|
@ -26,7 +46,7 @@ initialize mdescription = do
|
|||
setVersion
|
||||
gitPreCommitHookWrite
|
||||
u <- getUUID
|
||||
maybe (recordUUID u) (describeUUID u) mdescription
|
||||
describeUUID u =<< genDescription mdescription
|
||||
|
||||
uninitialize :: Annex ()
|
||||
uninitialize = do
|
||||
|
|
2
debian/changelog
vendored
2
debian/changelog
vendored
|
@ -2,6 +2,8 @@ git-annex (3.20120722) UNRELEASED; urgency=low
|
|||
|
||||
* initremote: Avoid recording remote's description before checking
|
||||
that its config is valid.
|
||||
* init: If no description is provided for a new repository, one will
|
||||
automatically be generated, like "joey@gnu:~/foo"
|
||||
|
||||
-- Joey Hess <joeyh@debian.org> Fri, 27 Jul 2012 21:04:47 -0400
|
||||
|
||||
|
|
|
@ -194,7 +194,8 @@ subdirectories).
|
|||
using it in a repository that was not intended to have an annex.
|
||||
|
||||
It's useful, but not mandatory, to initialize each new clone
|
||||
of a repository with its own description.
|
||||
of a repository with its own description. If you don't provide one,
|
||||
one will be generated.
|
||||
|
||||
* describe repository description
|
||||
|
||||
|
|
Loading…
Reference in a new issue