Mercurial has a special command to move things: hg mv
When you move your folders like this, itβs known in history that Foo/Source/Bar/SomeFile previously Foo/Bar/SomeFile .
Therefore, when you look at the history of Foo/Source/Bar/SomeFile , you also see the changes that were made when the file was still Foo/Bar/SomeFile .
Here is an example of moving the Bar1 folder to the Source folder and Bar1 :
hg mv Bar1 Source hg commit -m "moved to Source folder"
source share