initremote: Automatically describe a remote when creating it.
This ensures that all special remotes show up in git annex status. Before, a special remote that was not manually described, and was not a current git remote, did not show up there, although initremote did list it.
This commit is contained in:
parent
8408a91082
commit
4d1c114e4d
3 changed files with 5 additions and 5 deletions
|
@ -15,6 +15,7 @@ import qualified Remote
|
||||||
import qualified Logs.Remote
|
import qualified Logs.Remote
|
||||||
import qualified Types.Remote as R
|
import qualified Types.Remote as R
|
||||||
import Annex.UUID
|
import Annex.UUID
|
||||||
|
import Logs.UUID
|
||||||
|
|
||||||
def :: [Command]
|
def :: [Command]
|
||||||
def = [command "initremote"
|
def = [command "initremote"
|
||||||
|
@ -60,6 +61,7 @@ findByName name = do
|
||||||
where
|
where
|
||||||
generate = do
|
generate = do
|
||||||
uuid <- liftIO genUUID
|
uuid <- liftIO genUUID
|
||||||
|
describeUUID uuid name
|
||||||
return (uuid, M.insert nameKey name M.empty)
|
return (uuid, M.insert nameKey name M.empty)
|
||||||
|
|
||||||
findByName' :: String -> M.Map UUID R.RemoteConfig -> Maybe (UUID, R.RemoteConfig)
|
findByName' :: String -> M.Map UUID R.RemoteConfig -> Maybe (UUID, R.RemoteConfig)
|
||||||
|
|
|
@ -54,9 +54,9 @@ remoteMap :: (Remote -> a) -> Annex (M.Map UUID a)
|
||||||
remoteMap c = M.fromList . map (\r -> (uuid r, c r)) .
|
remoteMap c = M.fromList . map (\r -> (uuid r, c r)) .
|
||||||
filter (\r -> uuid r /= NoUUID) <$> remoteList
|
filter (\r -> uuid r /= NoUUID) <$> remoteList
|
||||||
|
|
||||||
{- Map of UUIDs and their descriptions.
|
{- Map of UUIDs of remotes and their descriptions.
|
||||||
- The names of Remotes are added to suppliment any description that has
|
- The names of Remotes are added to suppliment any description that has
|
||||||
- been set for a repository. -}
|
- been set for a repository. -}
|
||||||
uuidDescriptions :: Annex (M.Map UUID String)
|
uuidDescriptions :: Annex (M.Map UUID String)
|
||||||
uuidDescriptions = M.unionWith addName <$> uuidMap <*> remoteMap name
|
uuidDescriptions = M.unionWith addName <$> uuidMap <*> remoteMap name
|
||||||
|
|
||||||
|
@ -101,9 +101,6 @@ nameToUUID n = byName' n >>= go
|
||||||
double (a, _) = (a, a)
|
double (a, _) = (a, a)
|
||||||
|
|
||||||
{- Pretty-prints a list of UUIDs of remotes, for human display.
|
{- Pretty-prints a list of UUIDs of remotes, for human display.
|
||||||
-
|
|
||||||
- Shows descriptions from the uuid log, falling back to remote names,
|
|
||||||
- as some remotes may not be in the uuid log.
|
|
||||||
-
|
-
|
||||||
- When JSON is enabled, also generates a machine-readable description
|
- When JSON is enabled, also generates a machine-readable description
|
||||||
- of the UUIDs. -}
|
- of the UUIDs. -}
|
||||||
|
|
1
debian/changelog
vendored
1
debian/changelog
vendored
|
@ -2,6 +2,7 @@ git-annex (3.20120606) UNRELEASED; urgency=low
|
||||||
|
|
||||||
* add: Prevent (most) modifications from being made to a file while it
|
* add: Prevent (most) modifications from being made to a file while it
|
||||||
is being added to the annex.
|
is being added to the annex.
|
||||||
|
* initremote: Automatically describe a remote when creating it.
|
||||||
|
|
||||||
-- Joey Hess <joeyh@debian.org> Tue, 05 Jun 2012 20:25:51 -0400
|
-- Joey Hess <joeyh@debian.org> Tue, 05 Jun 2012 20:25:51 -0400
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue