Duplicating a repository
To duplicate a repository without forking it, you can run a special clone command, then mirror-push to the new repository.
Before you can duplicate a repository and push to your new copy, or mirror, of the repository, you must create the new repository on GitHub/Gitlab. In these examples, exampleuser/new-repository is the mirrors.
Mirroring a repository
1. Open (windows) Git Bash
You can use (mac)Terminal / (linux)Terminal as well
2. Create a bare clone of the repository.
git clone --bare https://github.com/_exampleuser_/_old-repository_.git
3. Mirror-push to the new repository.
cd _old-repository_.git
git push --mirror https://github.com/_exampleuser_/_new-repository_.git
4. Remove the temporary local repository you created in step 2.
cd ..
rm -rf _old-repository_
reference: https://help.github.com/articles/duplicating-a-repository/