# Did you know... ...that git lets you move and rename whole directories while preserving the git history of those files? If you run ```bash git read-tree --prefix=$NEW_PATH -u master:$OLD_PATH rm -rf $OLD_PATH # ...you probably want to change some imports... git commit -m $MESSAGE ``` that will move the directory tree to the new location, and, when you commit, it'll preserve this history of those files. Things that still work: - git blame - git merge with code that branched off before the renaming (incredible!) - you may have to set `merge.renamelimit` to something higher for this to work, i.e. `git config merge.renamelimit 4000`