It seems like a person should simply be able to “unfork” their GitHub repository when they no longer want it to be a fork, but would like to keep their commit history. Unfortunately, GitHub has no function like this, and says to contact support to change a repo’s “mode”. After a bit of digging in git/GitHub help pages, I found that one can use clone and mirror commands to the same effect. A word of caution: In addition to the “forked from” attribution, this method drops any wikis, issues, etc. associated with the repo (but again, the commit history is retained). Steps are as follows:

1) Make a temporary local bare clone of the forked repo

git clone --bare git@github.com:gregorybooma/osq.git

2) Create a new empty repo on GitHub with no extras such as readme, license, etc.

3) cd to the directory of the bare clone (it will have “.git” at the end of its name — don’t confuse for a file), and mirror push to the newly-created remote repo

cd osq.git
git push --mirror git@github.com:gregorybooma/mitsg-osq.git

4) cd out of the temporary bare clone’s directory to the desired location for the new repo, and clone it there

cd ../mitsg
git clone git@github.com:gregorybooma/mitsg-osq.git

5) Delete the temporary local and GitHub versions of the originally-forked repo (or retain the GitHub version, if desired)