summaryrefslogtreecommitdiff
path: root/Command/Merge.hs
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2012-02-25 16:11:47 -0400
committerGravatar Joey Hess <joey@kitenet.net>2012-02-25 16:18:55 -0400
commit1f73db3469e29448bcb1520893de11b23da6fb1f (patch)
treeb16fe0b9552818d16067e7cbb7c3403b73fe5e94 /Command/Merge.hs
parentb49c0c2633d662a7c91a609aec74f95f189129ad (diff)
improve alwayscommit=false mode
Now changes are staged into the branch's index, but not committed, which avoids growing a large journal. And sync and merge always explicitly commit, ensuring that even when they do nothing else, they commit the staged changes. Added a flag file to indicate that the branch's journal contains uncommitted changes. (Could use git ls-files, but don't want to run that every time.) In the future, this ability to have uncommitted changes staged in the journal might be used on remotes after a series of oneshot commands.
Diffstat (limited to 'Command/Merge.hs')
-rw-r--r--Command/Merge.hs2
1 files changed, 2 insertions, 0 deletions
diff --git a/Command/Merge.hs b/Command/Merge.hs
index c1f7e899a..0f4661497 100644
--- a/Command/Merge.hs
+++ b/Command/Merge.hs
@@ -26,4 +26,6 @@ start = do
perform :: CommandPerform
perform = do
Annex.Branch.update
+ -- commit explicitly, in case no remote branches were merged
+ Annex.Branch.commit "update"
next $ return True