Consider the following scenario:
I have developed a small experimental project A in its own Git repo. It has now matured, and I\'d like A to be part of larger projec
I wanted to move a small project to a subdirectory of a larger one. Since my small project did not have many commits, I used git format-patch --output-directory /path/to/patch-dir
. Then on the larger project, I used git am --directory=dir/in/project /path/to/patch-dir/*
.
This feels way less scary and way more cleaner than a filter-branch. Granted, it may not be applicable to all cases.