summaryrefslogtreecommitdiff
path: root/doc/bugs/making_annex-merge_try_a_fast-forward.mdwn
diff options
context:
space:
mode:
Diffstat (limited to 'doc/bugs/making_annex-merge_try_a_fast-forward.mdwn')
-rw-r--r--doc/bugs/making_annex-merge_try_a_fast-forward.mdwn35
1 files changed, 0 insertions, 35 deletions
diff --git a/doc/bugs/making_annex-merge_try_a_fast-forward.mdwn b/doc/bugs/making_annex-merge_try_a_fast-forward.mdwn
deleted file mode 100644
index 41a5a2a58..000000000
--- a/doc/bugs/making_annex-merge_try_a_fast-forward.mdwn
+++ /dev/null
@@ -1,35 +0,0 @@
-While merging the git-annex branch, annex-merge does not end up in a fast-forward even when it would be possible.
-But as sometimes annex-merge takes time, it would probably be worth it
-(but maybe I miss something with my workflow...).
-
-> I don't think a fast-forward will make things much faster.
->
-> git-annex needs its index file to be updated to reflect the merge.
-> With the union merge it does now, this can be accomplished by using
-> `git-diff-index` to efficiently get a list of files that have changed,
-> and only merge those changes into the index with `git-update-index`.
-> Then the index gets committed, generating the merge.
->
-> To fast-forward, it would just reset the git-annex branch to the new
-> head of the remote it's merging to. But then the index needs to be
-> updated to reflect this new head too. To do that needs the same method
-> described above, essentially (with the difference that it can replace
-> files in the index with the version from the git-annex branch, rather
-> than merging in the changes... but only if the index is known to be
-> already committed and have no other changes, which would require both
-> an attempt to commit it first, and
-> locking).
->
-> So will take basically the same amount of time, except
-> it would not need to commit the index at the end of the merge. The
-> most expensive work is the `git-diff-index` and `git-update-index`,
-> which are not avoided.
->
-> Although, perhaps fast-forward merge would use slightly
-> less space. --[[Joey]]
-
->> To avoid the ladder-merge between two repositories described at
->> <http://sprunge.us/LOMU>, seems a fast-forward should be detected and
->> written to git, even if the index is still updated the current way.
->> [[done]]
->> --[[Joey]]