From 79a5ee985199c7b12392ef168a042309b6fa4e29 Mon Sep 17 00:00:00 2001 From: Owen Jacobson Date: Fri, 17 Jul 2015 01:30:44 -0400 Subject: Fixup image links for Dokku-based version of site. --- .html/dev/merging-structural-changes.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to '.html/dev/merging-structural-changes.html') diff --git a/.html/dev/merging-structural-changes.html b/.html/dev/merging-structural-changes.html index e5c8795..a019d9c 100644 --- a/.html/dev/merging-structural-changes.html +++ b/.html/dev/merging-structural-changes.html @@ -63,7 +63,7 @@ sadly, performed dismally: none of the merge scenarios tested retained content changes when merging structural changes to the same files.

The Preferred Outcome

Both changes survive the
-merge.

+merge." src="/media/dev/merging-structural-changes/ideal-merge-results.png">

The diagram above shows a very simple source tree with one directory, dir-a, containing one file with two lines in it. On one branch, the file is modified to have a third line; on another branch, the directory is renamed to dir-b. @@ -73,7 +73,7 @@ changes: the file has three lines, and the directory has a new name.

merging.

Subversion

Subversion loses the content
-change.

+change." src="/media/dev/merging-structural-changes/subversion-merge-results.png">

There are two merge scenarios in this diagram, with almost the same outcome. On the left, a working copy of the branch where the file's content changed is checked out, then the changes from the branch where the structure changed are @@ -105,7 +105,7 @@ which is not as good as automatically merging it but far better than silently ignoring changes.

Mercurial

Mercurial preserves the content
-change.

+change." src="/media/dev/merging-structural-changes/mercurial-merge-results.png">

Interestingly, there are tools which get this merge scenario right: the diagram above shows how Mercurial handles the same two tests. Since its changeset language does include an “object -- cgit v1.2.3