diff options
author | Joey Hess <joey@kitenet.net> | 2013-12-05 16:05:07 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2013-12-05 16:05:07 -0400 |
commit | 19a01d9bf469607d4b491c1d2302ce6547fc80a2 (patch) | |
tree | c8a01d2367f76e10a466c7de9a768b57c58a3d99 | |
parent | 57a01d90316d18d55a9e9120d74f65782c7d5cf8 (diff) |
lock: Require --force.
-rw-r--r-- | Command/Lock.hs | 3 | ||||
-rw-r--r-- | debian/changelog | 1 | ||||
-rw-r--r-- | doc/bugs/git_annex_lock_dangerous.mdwn | 2 |
3 files changed, 6 insertions, 0 deletions
diff --git a/Command/Lock.hs b/Command/Lock.hs index 6dc58df74..bceba4a91 100644 --- a/Command/Lock.hs +++ b/Command/Lock.hs @@ -10,6 +10,7 @@ module Command.Lock where import Common.Annex import Command import qualified Annex.Queue +import qualified Annex def :: [Command] def = [notDirect $ command "lock" paramPaths seek SectionCommon @@ -21,6 +22,8 @@ seek = [withFilesUnlocked start, withFilesUnlockedToBeCommitted start] start :: FilePath -> CommandStart start file = do showStart "lock" file + unlessM (Annex.getState Annex.force) $ + error "Locking this file would discard any changes you have made to it. Use 'git annex add' to stage your changes. (Or, use --force to override)" next $ perform file perform :: FilePath -> CommandPerform diff --git a/debian/changelog b/debian/changelog index a6aa40341..155dc72f9 100644 --- a/debian/changelog +++ b/debian/changelog @@ -16,6 +16,7 @@ git-annex (5.20131131) UNRELEASED; urgency=low command to find DNS server, since there is no resolv.conf. * import: Add --skip-duplicates option. * Windows: watch and assistant work! (very experimental) + * lock: Require --force. -- Joey Hess <joeyh@debian.org> Sun, 01 Dec 2013 13:57:58 -0400 diff --git a/doc/bugs/git_annex_lock_dangerous.mdwn b/doc/bugs/git_annex_lock_dangerous.mdwn index f7b204784..ae0ff24b6 100644 --- a/doc/bugs/git_annex_lock_dangerous.mdwn +++ b/doc/bugs/git_annex_lock_dangerous.mdwn @@ -15,3 +15,5 @@ If you want my opinion, `git annex lock` should either require `-f` to throw awa ### What version of git-annex are you using? On what operating system? git version 1.8.1.2, git-annex version: 4.20130815, Kubuntu 13.04 + +> Agreed; [[done]] --[[Joey]] |