uninit: Add guard against being run with the git-annex branch checked out.
This commit is contained in:
parent
83d11c03c4
commit
66194684ac
3 changed files with 19 additions and 1 deletions
|
@ -7,6 +7,8 @@
|
|||
|
||||
module Command.Uninit where
|
||||
|
||||
import qualified Data.ByteString.Lazy.Char8 as B
|
||||
|
||||
import Common.Annex
|
||||
import Command
|
||||
import qualified Git
|
||||
|
@ -21,7 +23,20 @@ command = [repoCommand "uninit" paramPaths seek
|
|||
"de-initialize git-annex and clean out repository"]
|
||||
|
||||
seek :: [CommandSeek]
|
||||
seek = [withFilesInGit startUnannex, withNothing start]
|
||||
seek = [withNothing startCheck, withFilesInGit startUnannex, withNothing start]
|
||||
|
||||
startCheck :: CommandStart
|
||||
startCheck = do
|
||||
b <- current_branch
|
||||
when (b == Annex.Branch.name) $ error $
|
||||
"cannot uninit when the " ++ b ++ " branch is checked out"
|
||||
stop
|
||||
where
|
||||
current_branch = do
|
||||
g <- gitRepo
|
||||
b <- liftIO $
|
||||
Git.pipeRead g [Params "rev-parse --abbrev-ref HEAD"]
|
||||
return $ head $ lines $ B.unpack b
|
||||
|
||||
startUnannex :: FilePath -> CommandStart
|
||||
startUnannex file = do
|
||||
|
|
1
debian/changelog
vendored
1
debian/changelog
vendored
|
@ -3,6 +3,7 @@ git-annex (3.20111026) UNRELEASED; urgency=low
|
|||
* Sped up some operations on remotes that are on the same host.
|
||||
* copy --to: Fixed leak when copying many files to a remote on the same
|
||||
host.
|
||||
* uninit: Add guard against being run with the git-annex branch checked out.
|
||||
|
||||
-- Joey Hess <joeyh@debian.org> Thu, 27 Oct 2011 13:58:53 -0400
|
||||
|
||||
|
|
|
@ -11,3 +11,5 @@ Both of which is logical. The best thing would be if git-annex refused to run un
|
|||
|
||||
|
||||
Richard
|
||||
|
||||
> [[done]] --[[Joey]]
|
||||
|
|
Loading…
Reference in a new issue