Skip to main content

This version of GitHub Enterprise Server was discontinued on 2024-07-09. No patch releases will be made, even for critical security issues. For better performance, improved security, and new features, upgrade to the latest version of GitHub Enterprise Server. For help with the upgrade, contact GitHub Enterprise support.

Detaching a fork

You can delete a fork and recreate the same repository, without the connection to the original network.

Who can use this feature?

People with admin access for a forked repository can delete the forked repository.

Platform navigation

About detaching forks

To turn your fork into a standalone repository, you can clone the fork, use the clone to create a new repository, and then delete the fork. This is useful when you want to take the work you are doing in a different direction or maintain distinct versions.

The new repository will no longer automatically sync with changes from the original repository.

Notes:

  • The new repository will not retain any of its issues, pull requests, wikis, stars, watchers, comments, child forks, or other metadata that may currently be associated with your current fork.
  • All commit metadata will be preserved. Commits may become eligible to be counted as contributions, if they meet certain criteria. For more information, see "Why are my contributions not showing up on my profile?."

Note: If you are unable to detach a fork, contact your site administrator.

Detaching a fork

You can delete a fork and recreate the same repository, without the connection to the original network.

  1. Open TerminalTerminalGit Bash.

  2. Create a bare clone of the fork.

    git clone --bare https://HOSTNAME/EXAMPLE-USER/FORK-NAME.git
    
  3. Delete the forked repository. For more information, see "Deleting a repository."

    Warning: Deleting a fork will permanently delete any associated pull requests and configurations. This action cannot be undone.

  4. Create a new repository with the same name in the same location. For more information, see "Creating a new repository."

  5. Mirror-push the repository back to the same remote URL.

    cd FORK-NAME.git
    git push --mirror https://github.com/EXAMPLE-USER/FORK-NAME.git
    
  6. Remove temporary local clone you created earlier.

    cd ..
    rm -rf FORK-NAME.git
    

For more information, see our support page on forks.