One of the nicest things about git is that you don’t need to track file renames explicitly. Git will figure it out by comparing the contents of the files.
So, in your case, don’t work so hard: Ref: Git mv docs
$ mkdir include
$ git mv common include
$ git rm -r common
$ git add include/common
Running git status
should show you something like this:
$ git status
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# renamed: common/file.txt -> include/common/file.txt
#