diff options
author | Joey Hess <joey@kitenet.net> | 2014-06-09 20:14:52 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2014-06-09 20:16:01 -0400 |
commit | f4308b107242781b5de98804eb68a9657b348c49 (patch) | |
tree | f6431c467f95eff81b92633b19b7595bb6b3928e | |
parent | 2ca723a7c1c1130465b21d7db23c137976f58f6f (diff) |
devblog
-rw-r--r-- | debian/changelog | 6 | ||||
-rw-r--r-- | doc/devblog/day_181__tricky_merge.mdwn | 8 |
2 files changed, 9 insertions, 5 deletions
diff --git a/debian/changelog b/debian/changelog index 64225ea36..4d0b91950 100644 --- a/debian/changelog +++ b/debian/changelog @@ -3,11 +3,7 @@ git-annex (5.20140607) UNRELEASED; urgency=medium * Ignore setsid failures. * Avoid leaving behind .tmp files when failing in some cases, including importing files to a disk that is full. - * direct mode: Avoid committing a merge until after the work tree is - updated. This avoids an interrupted merge leaving the work tree out - of sync with the last commit, which could result in the wrong thing - being committed later, and files appearing to get deleted. - (They could be recovered by reverting the bad commit.) + * Avoid bad commits after interrupted direct mode sync (or merge). -- Joey Hess <joeyh@debian.org> Mon, 09 Jun 2014 14:44:09 -0400 diff --git a/doc/devblog/day_181__tricky_merge.mdwn b/doc/devblog/day_181__tricky_merge.mdwn new file mode 100644 index 000000000..c6bcaf8d4 --- /dev/null +++ b/doc/devblog/day_181__tricky_merge.mdwn @@ -0,0 +1,8 @@ +Spent most of today improving behavior when a sync or merge is +interrupted in direct mode. It was possible for an interrupt at the wrong +time to leave the merge committed, but the work tree not yet updated. And +then the next sync would make a commit that reverted the merged changes! + +To fix this I had to avoid making any merge commit or indeed updating the +index until after the work tree is updated. It looked intractable for a +while; I'm still surprised I eventually succeeded. |