git checkout --orphan future-master
git add -A # Add all files and commit them
git commit
git branch -D master # Deletes the master branch
git branch -m master # Rename the current branch to master
git push -f origin master # Force push master branch to github
git gc --aggressive --prune=all # remove the old files
Works well with git submodules too. From: https://stackoverflow.com/a/13102849/1253966
Does not work - you cannot delete the default branch 'master' - maybe that is some later security measure? Would be great to see an update of this:)
NB! Using gitlab.com though - that may also be a factor...